本文目錄一覽:
- 1、如何通過java代碼來修改nginx中的配置
- 2、Nginx伺服器如何配合Java開發項目
- 3、開源Nginx可視化配置工具,快速搞定Nginx配置難題
- 4、nginx的client_max_body_size解決上傳大文件的問題
如何通過java代碼來修改nginx中的配置
修改nginx的默認頁有很多方法,下面介紹兩種:
(1)在location中通過index指令設置:此時如果訪問127.0.0.1nginx會請求/home/wangwei/webroot/index.html文件併產生響應
location ~ \.php$ {
root /home/wangwei/webroot;
index index.html;
fastcgi_pass a href=”;tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1dBuW63mWnvPhDYm1FbuADY0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPHTvPWDzrjDL” target=”_blank” class=”baidu-highlight”127.0.0.1/a:9000;
include fastcgi.conf;
include fastcgi_params;
}
(2)通過rewrite指令重定向/請求
location ~ \.php$ {
root /home/wangwei/webroot;
index index.html;
fastcgi_pass a href=”;tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1dBuW63mWnvPhDYm1FbuADY0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPHTvPWDzrjDL” target=”_blank” class=”baidu-highlight”127.0.0.1/a:9000;
include fastcgi.conf;
include fastcgi_params;
#重定向首頁.
rewrite “^/+$” /xxx.php break;
}
可以根據需要採用其中的任何一種。
Nginx伺服器如何配合Java開發項目
nginx不能直接和java搭配使用的,因為nginx不能解析java,nginx一般只想java伺服器,
nginx指向tomcat,tomcat解析java
開源Nginx可視化配置工具,快速搞定Nginx配置難題
《開源精選》是我們分享Github、Gitee等開源社區中優質項目的欄目,包括技術、學習、實用與各種有趣的內容。本期推薦的是一個Nginx界面配置工具——nginxWebUI。
nginxWebUI是一款圖形化管理nginx配置的工具, 可以使用網頁來快速配置nginx的各項功能, 包括http協議轉發、tcp協議轉發、反向代理、負載均衡、靜態html伺服器、ssl證書自動申請、續簽、配置等,配置好後可一建生成nginx.conf文件, 同時可控制nginx使用此文件進行啟動與重載,完成對nginx的圖形化控制閉環。
本項目是基於solon的web系統,資料庫使用h2, 因此伺服器上不需要安裝任何資料庫。
本系統通過Let’s encrypt申請證書,使用acme.sh腳本進行自動化申請和續簽,開啟續簽的證書將在每天凌晨2點進行續簽,只有超過60天的證書才會進行續簽,只支持在linux下籤發證書。
添加tcp/ip轉發配置支持時, 一些低版本的nginx可能需要重新編譯,通過添加–with-stream參數指定安裝stream模塊才能使用,但在ubuntu 18.04下,官方軟體庫中的nginx已經帶有stream模塊,不需要重新編譯。本系統如果配置了tcp轉發項的話,會自動引入ngx_stream_module.so的配置項,如果沒有開啟則不引入,最大限度優化ngnix配置文件。
打開 進入主頁。
登錄頁面,第一次打開會要求初始化管理員賬號。
進入系統後,可在管理員管理裡面添加修改管理員賬號。
在http參數配置中可以配置nginx的http項目,進行http轉發,默認會給出幾個常用配置,其他需要的配置可自由增刪改查,可以勾選開啟日誌跟蹤,生成日誌文件。
在TCP參數配置中可以配置nginx的steam項目參數,進行tcp轉發。
在反向代理中可配置nginx的反向代理即server項功能,可開啟ssl功能,可以直接從網頁上上傳pem文件和key文件,或者使用系統內申請的證書,可以直接開啟http轉跳https功能,也可開啟http2協議。
在負載均衡中可配置nginx的負載均衡即upstream項功能,在反向代理管理中可選擇代理目標為配置好的負載均衡。
在證書管理中可添加證書,並進行簽發和續簽,開啟定時續簽後,系統會自動續簽即將過期的證書。
備份文件管理,這裡可以看到nginx.cnf的備份 歷史 版本,nginx出現錯誤時可以選擇回滾到某一個 歷史 版本。
最終生成conf文件,可在此進行進一步手動修改,確認修改無誤後,可覆蓋本機conf文件,並進行校驗和重啟,可以選擇生成單一nginx.conf文件還是按域名將各個配置文件分開放在conf.d下。
遠程伺服器管理,如果有多台nginx伺服器,可以都部署上nginxWebUI,然後登錄其中一台,在遠程管理中添加其他伺服器的ip和用戶名密碼,就可以在一台機器上管理所有的nginx伺服器了。
提供一鍵同步功能,可以將某一台伺服器的數據配置和證書文件同步到其他伺服器中。
本系統提供http介面調用,只要開 即可查看smat-doc介面頁面。
介面調用需要在header中添加token,其中token的獲取需要在管理員管理中,打開用戶的介面調用許可權,然後通過用戶名密碼調用獲取token介面,才能得到token,然後在knife4j的文檔管理中設置全局token。
jar安裝說明:
以Ubuntu操作系統為例:
1 安裝java運行環境和nginx
Ubuntu:
Centos:
Windows:
2 下載最新版發行包jar
有新版本只需要修改路徑中的版本即可。
3 啟動程序
docker安裝說明
本項目製作了docker鏡像,同時包含nginx和nginxWebUI在內,一體化管理與運行nginx。
1 安裝docker容器環境
ubuntu:
centos:
2 下載鏡像
3 啟動容器
—END—
開源協議:MulanPSL-1.0
開源地址:
nginx的client_max_body_size解決上傳大文件的問題
因為有個上傳大文件的功能,修改了springboot 的yml配置文件中的上傳配置文件的參數
maxHttpHeaderSize: 102400000
maxHttpPostSize: 102400000
無法打開網站,各種js,css資源文件載入不出來報錯404,一開始一直檢查tomcat應用,但在本地環境和測試內網環境單tomcat都ok,後懷疑
是dc/os配置問題,然後各種上傳鏡像修改啟動應用的伺服器,還是不行。
解決辦法
通過設置nginx的client_max_body_size解決nginx+java上傳大文件的問題:
用nginx來做webserver的時,上傳大文件時需要特別注意client_max_body_size這個參數,否則會中斷在nginx的請求中是無法記錄到訪問的.
但是還是不行,因為的webserver用的是nginx, google了一下,發現在nginx的conf中添加了一個參數:
默認是1M,需要增大的話。
在nginx.conf中增加一句
client_max_body_size 500m;
重啟即可
500m表示最大上傳500M,需要多大設置多大。
最後發現原因就是 用nginx來做webserver的時,上傳大文件時需要特別注意client_max_body_size這個參數,否則會中斷在nginx的請求中是無法記錄到訪問的.
原創文章,作者:ZILD,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/149160.html