如何利用nginx通過(guò)正則攔截指定url請(qǐng)求詳解
nginx服務(wù)器
nginx是非常出色web服務(wù)器,對(duì)于靜態(tài)文件的處理非常高效,同時(shí)它的代理轉(zhuǎn)發(fā)功能和其它后臺(tái)服務(wù)器搭配起來(lái)也非常的簡(jiǎn)單高效。
location
我們知道nginx會(huì)對(duì)請(qǐng)求進(jìn)行解析,然后回得到關(guān)于請(qǐng)求的url等信息,我們只需要對(duì)url進(jìn)行匹配,然后攔截即可。
匹配規(guī)則
location / { if ($request_uri ~* ^/\?http(.*)$) { return 404; } }
經(jīng)過(guò)這樣的匹配,我們就可以攔截所有請(qǐng)求根目錄的網(wǎng)址并且參數(shù)為?httpxxx類似的請(qǐng)求都會(huì)顯示404.
防盜鏈
返回http代碼,例如設(shè)置nginx防盜鏈:
location ~* \.(gif|jpg|png|swf|flv)$ { valid_referers none blocked www.80shihua.com www.menghuiguli.com; if ($invalid_referer) { return 404; } }
nginx常用變量
nginx解析出很多我們常用的變量,我們只需要拿過(guò)來(lái)使用即可,下面就是nginx常用的變量。具體使用方法,可以參考官方文檔。
$content_length
$content_type
$cookie_
$date_gmt
$date_local
$document_root
$document_uri
$fastcgi_path_info
$fastcgi_script_name
$gzip_ratio
$host
$hostname (ngx_http_core_module)
$hostname (ngx_stream_core_module)
$http2
$http_
$protocol
$proxy_host
$proxy_port
$query_string
$realpath_root
$request
$request_body
$request_uri
$scheme
$server_name
$uri
總結(jié)
到此這篇關(guān)于如何利用nginx通過(guò)正則攔截指定url請(qǐng)求的文章就介紹到這了,更多相關(guān)nginx通過(guò)正則攔截指定url請(qǐng)求內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。