亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

nginx rewrite規則(二)

發布時間:2020-04-15 08:46:07 來源:網絡 閱讀:251 作者:悠悠子濛 欄目:系統運維

需求:研發提出一些路由跳轉需求。
解決問題:特殊情況,業務及研發無法快速處理的時候,需要運維快速跳轉,解決臨時問題,避免更大的bug。

案例一:

臨時將請求路徑/colorv1/getcolorv1 的請求轉發到 v2,且帶著問號后面的參數 :

location ~ ^/(.)/(.)/colorv1/getcolorv1$ {
proxy_pass http://category-color-api/$1/$2/colorv2/getcolorv2?$args;
}

案例二:

任意開頭和結尾的uri,重定向至"http://test.jenkins.com/jenkins"

        location / { 
                    rewrite ^/(.*)$ http://test.jenkins.com/jenkins; 
        }

location /jenkins {
proxy_pass http://127.0.0.1:8080/jenkins;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded_For $proxy_add_x_forwarded_for;
}

案例三

如果訪問的URL以.sh .bash 結尾,返回狀態碼403

location ~ .*.(sh|bash)?$ {
return 403;
}

案例四

nginx 多判斷條件語句如何實現? 比如,同時滿足2個條件的請求,才轉發。
nginx的配置中不支持if條件的邏輯中包含&& 或 || 的運算 ,而且不支持if的嵌套語法;

否則會報錯誤:nginx: [emerg] invalid condition; 對此情況我們可以用變量的方式來實現。
如: 請求到/color 的訪問,請求方法是post,且refer 為abc.com;返回200:且顯示內容{"code": 1, "msg": "發布成功"}, 其他不滿足這兩個條件的請求,轉發到gateway;

         location ~  /color$  {
            set $post 0;    ##定義變量
            if ($request_method ~* "POST") {
                    set $post "${post}1";
            }   
            if ($http_referer ~* "abc.com") {
                    set $post "${post}2";
             }
            if ($post = "012") {
                    return 200 '{"code": 1, "msg": "發布成功"}';
             }
                     proxy_pass http://$gateway/a-b-api$request_uri;
             }
案例五

禁止Scrapy等工具和UA為空的抓取

            if ($http_user_agent ~* (Scrapy|Curl|HttpClient|^$)) {
                return 403;
            }

附:nginx配置完成之后,curl常用驗證方法
當我們做了一些條件的限制,在本地curl驗證通過方可上線:

-H "referer:abc" // 設置referer
-A "okhttp/3.12.0" // 設置請求 http_user_agent
-X POST //請求方法post
-d ‘{}’ //請求參數

curl -H "referer:" -A "okhttp/3.12.0" -X POST -d '{"user": "admin", "passwd":"123456
78"}' http://test.abc.com/1/7.3/color?client=064bfc8ch577e5f6
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

嘉禾县| 织金县| 贵德县| 汝州市| 夏邑县| 中超| 望都县| 宁晋县| 宁河县| 山阳县| 武山县| 眉山市| 青河县| 德清县| 宁南县| 富阳市| 界首市| 安龙县| 镇坪县| 改则县| 凉山| 达孜县| 孙吴县| 永嘉县| 洮南市| 德清县| 黎城县| 府谷县| 东方市| 吉首市| 广丰县| 科技| 和林格尔县| 宜昌市| 柳河县| 林周县| 崇明县| 丹寨县| 磐石市| 长丰县| 淅川县|