Nginx設定總結
修改nginx伺服器配置,在conf檔案下的nginx.conf檔。
<code><span>#user nobody; #运行用户</span><span>#worker_processes 1; #启动进程数,通常设置成和cpu数目相同</span><span>#error_log /var/log; #错误日志</span> events { worker_connections <span>1024</span>;<span>#单个后台work process进程最大并发链接数</span> } <span>#设定http服务器</span> http{ <span>#设定mime类型,类型由mime.type文件定义</span> include /etc/nginx/mime.types; default_type <span>application</span>/octet-stream; <span>#设定日志格式</span> access_log /var/<span>log</span>/nginx/access.<span>log</span>; sendfile <span><span>on</span></span>; <span>#连接超时时间</span><span>#keepalive_timeout 0;</span> keepalive_timeout <span>65</span>; tcp_nodelay <span><span>on</span></span>; <span>#集群中的所有后台服务器的配置信息,用于负载均衡</span> upstream local_tomcat{ server <span>192.168</span><span>.0</span><span>.111</span>:<span>80</span>; server <span>192.168</span><span>.0</span><span>.109</span>:<span>8080</span>; } server{ listen <span>8090</span>; <span>#当前代理服务器监听端口</span> server_name localhost:<span>80</span>; <span>#监听后要转到地址</span><span>#charset koi8-r;</span><span>#access_log logs/host.access.log main;</span> location / { <span>#location表示匹配路径,/表示所有请求</span> root html; <span>#静态文件存放的路径</span> index index.html index.htm; <span>#没有主页时,此为主页,可多个</span> } <span>#error_page 404 /404.html;</span><span># redirect server error pages to the static page/50x.html</span> error_page <span>500</span><span>502</span><span>503</span><span>504</span> /<span>50</span>x.html; location = /<span>50</span>x.html { root html; } } } </code>
常見問題總結:
1. nginx+tomcat影響request值
request.getScheme() //總是 http,而不是實際的http或https
request.isSecure() //總是false(因為總是http)
request.getRemoteAddr() //總是 nginx 請求的 IP,而不是使用者的IP
request.getRequestURL() //總是 nginx 請求的URL 而不是使用者實際請求的 URL
request.getServerName //總是nginx請求的ip
request.getServerPort //總是nginx請求的連接埠
response.sendRedirect( 相對url ) //總是重新導向到 http 上 (因為認為目前是 http 要求)
解決方法:
修改nginx設定:
<code>proxy_<span>set</span>_header Host <span>$host</span>; <span>#解决getRequestURL、getServerName、getServerPort问题</span> proxy_<span>set</span>_header X-Real-IP <span>$remote_addr</span>;<span>#把真实的ip发送给转发的web服务器</span> proxy_<span>set</span>_header X-Forwarded-For <span>$proxy_add_x_forwarded_for</span>;<span>#解决request.getScheme()只能返回http而不是https问题</span></code>
設定tomcat的server.xml的Engine模組,設定一個value
<code><span>< <span>Valve</span><span>className</span>=<span>"org.apache.catalina.valves.RemoteIpValve"</span><span>remoteIpHeader</span>=<span>"X-Forwarded-For"</span><span>protocolHeader</span>=<span>"X-Forwarded-Proto"</span><span>protocolHeaderHttpsValue</span>=<span>"https"</span> /></span></code>
版權聲明:本文為部落客原創文章,未經部落客允許不得轉載。
以上就介紹了Nginx配置總結,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

HTML、CSS和JavaScript在Web開發中的作用分別是:1.HTML定義網頁結構,2.CSS控製網頁樣式,3.JavaScript添加動態行為。它們共同構建了現代網站的框架、美觀和交互性。

如何在 Windows 中配置 Nginx?安裝 Nginx 並創建虛擬主機配置。修改主配置文件並包含虛擬主機配置。啟動或重新加載 Nginx。測試配置並查看網站。選擇性啟用 SSL 並配置 SSL 證書。選擇性設置防火牆允許 80 和 443 端口流量。

可以通過以下步驟查詢 Docker 容器名稱:列出所有容器(docker ps)。篩選容器列表(使用 grep 命令)。獲取容器名稱(位於 "NAMES" 列中)。

Docker 容器啟動步驟:拉取容器鏡像:運行 "docker pull [鏡像名稱]"。創建容器:使用 "docker create [選項] [鏡像名稱] [命令和參數]"。啟動容器:執行 "docker start [容器名稱或 ID]"。檢查容器狀態:通過 "docker ps" 驗證容器是否正在運行。

確認 Nginx 是否啟動的方法:1. 使用命令行:systemctl status nginx(Linux/Unix)、netstat -ano | findstr 80(Windows);2. 檢查端口 80 是否開放;3. 查看系統日誌中 Nginx 啟動消息;4. 使用第三方工具,如 Nagios、Zabbix、Icinga。

HTML的未來充滿了無限可能。 1)新功能和標準將包括更多的語義化標籤和WebComponents的普及。 2)網頁設計趨勢將繼續向響應式和無障礙設計發展。 3)性能優化將通過響應式圖片加載和延遲加載技術提升用戶體驗。

可以查詢 Nginx 版本的方法有:使用 nginx -v 命令;查看 nginx.conf 文件中的 version 指令;打開 Nginx 錯誤頁,查看頁面的標題。

在 Docker 中創建容器: 1. 拉取鏡像: docker pull [鏡像名] 2. 創建容器: docker run [選項] [鏡像名] [命令] 3. 啟動容器: docker start [容器名]
