如何利用nginx通過正則攔截指定url請(qǐng)求詳解
nginx服務(wù)器
nginx是非常出色web服務(wù)器,對(duì)于靜態(tài)文件的處理非常高效,同時(shí)它的代理轉(zhuǎn)發(fā)功能和其它后臺(tái)服務(wù)器搭配起來也非常的簡(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)過這樣的匹配,我們就可以攔截所有請(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解析出很多我們常用的變量,我們只需要拿過來使用即可,下面就是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通過正則攔截指定url請(qǐng)求的文章就介紹到這了,更多相關(guān)nginx通過正則攔截指定url請(qǐng)求內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解nginx 代理多個(gè)服務(wù)器(多個(gè)server方式)
本篇文章主要介紹了詳解nginx 代理多個(gè)服務(wù)器(多個(gè)server方式),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-10-10nginx反向代理失效前端無法獲取后端的數(shù)據(jù)解決辦法
Nginx服務(wù)器的反向代理服務(wù)是其最常用的重要功能,由反向代理服務(wù)也可以衍生出很多與此相關(guān)的Nginx服務(wù)器重要功能,下面這篇文章主要給大家介紹了關(guān)于nginx反向代理失效前端無法獲取后端的數(shù)據(jù)解決的相關(guān)資料,需要的朋友可以參考下2023-12-12nginx禁止某個(gè)IP訪問站點(diǎn)的設(shè)置方法
近期發(fā)現(xiàn)博客遭到某些人的惡意灌水,頻繁地利用發(fā)帖機(jī)器人發(fā)表評(píng)論,給博客的管理帶來諸多不便,搜索了一下資料,可以利用nginx的ngx_http_access_module 模塊設(shè)置允許/禁止哪些ip或ip段訪問站點(diǎn)。2010-12-12nginx:?[emerg]?unknown?directive報(bào)錯(cuò)誤的問題
本文主要介紹了nginx:?[emerg]?unknown?directive報(bào)錯(cuò)誤的問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-09-09Nginx中報(bào)錯(cuò):Permission denied與Connection refused的解決
這篇文章主要給大家介紹了在Nginx中報(bào)錯(cuò):13: Permission denied與111: Connection refused的解決方法,文中介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來一起看看吧。2017-04-04使用Nginx實(shí)現(xiàn)灰度發(fā)布的使用
這篇文章主要介紹了使用Nginx實(shí)現(xiàn)灰度發(fā)布的使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03