工作中nginx整理
nginx很強大,匹配規則也很豐富。本人對nginx的用法也是一知半解,只能根據實際需求去學習並總結起來。以下是我工作中用到的nginx一些用法整理,前幾個還是比較常用的,最後乙個就我也是第一次見。
一、配置404頁面(針對同一網域名稱不同服務)
針對某個常用活動的網域名稱
abc.gdljy.cn,在這個網域名稱下都使用同乙個404頁面,大家配的多,類似這樣子。
如果針對某個活動,假設叫 dg20200918
具體的location匹配某個活動,某個活動自己定義自己的404頁面
1 location ^~ /dg20200918view code8 }
二、nginx跳到指定redirect頁面
需求:專案啟動開發前,需要給運營同事乙個海報位址,然後還要生成乙個***給他們;我一般那會直接用location匹配乙個專案目錄,然後專案位址就這樣直接發這個給他們了:a.gdljy.cn/dcbg20201013/
location ^~ /dcbg20201013然後專案啟動後(tomcat跑的),停服務就悲劇了,因為開發人員給的位址是乙個專案下叫redirect.html 的頁面,不應該是a.gdljy.cn/dcbg20201013/,並且預設是找 index.html 的,找不到就404了。
那怎麼辦呢,dcbg20201013這個專案位址已經給出去了(海報不是說換就換的,真是一失足成千古恨,淚 = =! ),那麼就建乙個臨時目錄唄,用rewrite去實現原目錄重寫到這個目錄下的redirect.html
問題解決:
建立乙個臨時目錄為bg20201013 ,bg20201013變成真正的專案目錄,原來的目錄變成乙個傀儡,僅僅充當乙個被重寫的位址, tomcat的server.xml也得改,context path由原來的dcbg20201013改成bg20201013。
1 location ^~ /bg20201013view code7##ip受限頁面
8 error_page 403 /dcbg-403
;9 location ~ /dcbg-40312}
13#這是原來給出去的***位址
14 location ^~ /dcbg20201013
三、nginx問題之如何將get問題轉換為post請求
開發調介面,需要從原來的跳到:
我原來用rewrite寫的,發現跟proxy_method一起用是無法生效的,幸好這個proxy_pass也能跳。
1 location ^~ /dg20200918/notificationview code
四、nginx調參
目前遇到的是設定上傳檔案大小限制的:
client_max_body_size 1024m;
五、nginx針對單個location加身份認證
也可以對所有虛擬主機進行身份認證(即對所有server生效) ——》 寫在主配置檔案nginx.conf
或針對單個虛擬主機身份認證 ——》auth_basic 兩句寫在所有location之外
1、安裝httpd-tools工具
2、使用htpasswd命令來建立使用者
使用者:windysai
密碼:passwd
3、配置nginx虛擬配置檔案
location ^~ /ljy_test/manage另外,第2步和第3步之間有查到說,為了安全性,還需要修改密碼檔案賬戶還有修改密碼檔案許可權為600的,有需要大家可以加下。
chown -rf nginx.nginx passwd.dbchmod
600passwd.db
工作中相關概念整理
boss business operations support system客戶費用及訂購關係管理 pboss product business operation support system,產品運營支撐系統 cboss center boss 一級boss介面系統 esop enterpri...
工作中幾條小經驗整理(持續更新)
1 當開啟乙個鏈結發生404錯誤時,一般是找不到資源。但是在domino中,也可能是要開啟的表單中的某個域解析失敗,或者是某些許可權限制等造成。解決辦法 1 將表單中可能造成這種問題的域 計算文字 子表單等幾個幾個的刪除,並且每次刪除後就嘗試開啟表單。2 一旦表單開啟成功 可能顯示不正常,但是不報4...
工作中遇到的
今天,在工作中,發現乙個問題,簡要描述 用perl寫的cgi程式獲取表單元素的值,用獲得的值拼接sql語句,假如有個表單元素這樣寫 其中 type id 由perl寫成的同乙個cgi程式執行時寫入。另設乙個表單元素,供使用者輸入值使用 在cgi中獲得表單元素的值 my type id cgi par...