搜尋
首頁後端開發php教程Nginx.conf 設定小結

最近幾個月的項目都是在nginx 環境下搭建的,特此記錄下配置文件的相關內容,以備不時之需,歡迎吐槽~~

詳細配置信息請勤奮查閱官方官方文件:http://wiki.nginx.org/Configuration

#指定Nginx運行的使用者和使用者群組,據此可設定nginx存取資料夾的權限,防止非法使用者存取無權限資料夾。順便提一句,對於php工程的日誌檔案讀寫

#所屬用戶不是nginx,因為nginx是將php轉發給php-cgi來解析,因此用戶是php-cgi的所有者,一般是www-data

user nginx nginx;

#開啟nginx的進程數目,數目應小於等於CPU總核心數,提高程式的並發性

worker_pro #全局存取和錯誤日誌及其級別,[ debug | info | notice | warn | error | crit ]

access_log /var/nginx/access.log;

error_log /varess.arnx/error.

#預設的日誌格式設定

log_format access $remote_addr - $remote_user [$time_local] "$request" '

'"$http_user_agent" $http_x_forwarded_for';

#進程運行時的檔案

pid /run/nginxpid;

pid /run/nginxpid;


events

{

#事件模型,use [ kqueue | rtsig | epoll | /dev/poll | select | poll ];

3版本效能網路I/O模型,如果跑在FreeBSD上面,就用kqueue模型。

use epoll;

#單一進程最大連線數(最大連線數=連線數*進程數),我的設定是768*4

接受多個請求,高併發

multi_accept on;

}

}

{

include mime .types; #使用MIME格式,檔案副檔名與檔案類型對應表default_type application/octet-stream; #預設檔案類型,檔案流

#charset utf-8; # #

#charset utf-8; # # server_names_hash_bucket_size 128; #伺服器名字的hash表大小

#設定上傳檔案的大小上限為8MB

client_max_body_sizeizesize ,

呼叫sendfile 函數(zero copy 方式)來輸出檔案

,對於普通應用設為on,如果用來進行下載等應用磁碟IO重負載應用,#可設定為off,以平衡磁碟與網路I/O處理速度,降低系統的負載和uptime。注意:如果圖片顯

示不正常把這個改成off。

sendfile on;

#設定存取黑白名單, 檔案名,大小

hite_black_list_conf conf/black.list zone =black1:4m;

 white_list white1 on; #白名單white1 在整個http{} 中都開啟

 black_list black1 on; #黑名單black1 在整個http{} 都開啟

網路阻塞

tcp_nodelay on; #防止網路阻塞

keepalive_timeout 65; #長連線逾時時間,單位為秒,開啟速度gzip on;

#開啟gzip壓縮輸出

gzip_min_length 1k;

#1032 月開啟壓縮的檔案大小。 #設定係統取得幾個單位的緩存用於儲存gzip的壓縮結果資料流,一次申請4*16=64k快取


gzip_http_version 1.0;

#壓縮使用http1.0及以上的檔案 ,1-10,越大壓縮率越高

#壓縮檔案類型,css,js,php,jpg,png

gzip_typestext/plain application/x-java text/javascript application/x-httpd-php image/jpeg image/gif image/png

gzip_vary on;#允許例外

gzip_disable"MISE[1-6]"#IE6及以下禁用壓縮

#limit_zone crawler $binary_remote_addr 10m;開啟限制開啟限制連接數的時候需要使用? upstream www .xxx.com {

#upstream的負載平衡,weight是權重,可以依照機器配置定義權重。 weigth參數表示權值,權值越高被分配到的幾率越大。

server 192.168.80.121:80 weight=3;

server 192.168.80.122:80 weight=2; ;

}

#FastCGI相關參數是為了改善網站的效能:減少資源佔用,提高存取速度。

fastcgi_connect_timeout 300;

fastcgi_send_timeout 300;

fastcgi_read

fastcgi_buffers 4 64k;

fastcgi_busy_buffers_size 128k;

fastcw

#各伺服器的設定

server

{


listen [: :]:80 default_server ipv6only=on;

#網域可以有多個,用空格隔開

server_name www.xx.com xx.com; root /data/www/xx;

#手機端導向另一個頁面

 location / {


#判斷訪問終端類型

        if ($http_user_agent ~* '(Android| iPhone|iPad|webOS|iPod|BlackBerry)') {                rewrite ^.+ http://m.xx.com;        }

             index  index.php index.html index .htm;

        }#靜態檔案直接存取 

#圖片快取時間設定, 類似html頁meta標籤,可設定expire or max-age

~ |jpg|jpeg|png|bmp|swf

)$ {

expires 10d;

     }

#php導引9000連接埠




location ~ .php$ {

                root     fastcgi_split_path_info ^(.+.php)(/.+)$;                # NOTE: You should have "cgi .fix_pathinfo = 0;" in php.ini                # With php5-cgi alone:               # With php5-fpm:                #fastcgi_pass unix:/var/run/php5-fpm.sock;

fastcgi_index index.php;

                fastcgi_param  SCRIPT_FILENAME  $ument_root$     }

#JS與CSS快取時間設定

location ~ .*.(js|css)?$ {


expires 1h;

}

#錯誤頁 error_page 500 502 5030 /50x.html {
                root /usr/share/nginx/ html;
        }



#對"/" 啟用反向代理



location / {

_protoalxy57. off;

proxy_set_header X-Real-IP $remote_addr;

#後端的Web伺服器可以透過X-Forwarded-For取得使用者真實IP

_proxy_set_header X-Forwarded-Forxy_profid;反向代理的配置,可選。

proxy_set_header Host $host;

client_max_body_size 10m; #允許客戶端請求的最大單文件字節數

5_c


proxy_connect_timeout 90; #nginx跟後端伺服器連線逾時時間(代理連線逾時)

proxy_send_timeout 90; #後端伺服器資料回傳時間(代理發送逾時)

proxy_read_timeout 90; #連線成功後,後端伺服器回應時間(M比賽代理接收逾時)

_

伺服器(nginx)保存使用者頭資訊的緩衝區大小

proxy_buffers 4 32k; #proxy_buffers緩衝區,網頁平均在32k以下的設定

_proxy_busy_buffers_sizesizes(prot)

proxy_temp_file_write_size 64k;

#設定快取資料夾大小,大於這個值,將從upstream伺服器傳送

} location /NginxStatus {

stub_status on;

access_log on;

auth_basic "NotxStatus";

#htpasswd檔案的內容可以用apache提供的htpasswd工具來產生。

}

 

#如果使用j2ee, 可將頁導向8080 (jsp| jspx|do|action)?$ {

proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Real-IP $remote_地址;

proxy_pass http ://127.0.0.1:8080;}

}

#再設定一個行動端存取的server, 接過手機端存取主站導來的請求🠎 server_name m.xx.com www.m.xx.com;

        access_log  /usr/share/nginx/logs/mobile_access.log;      location / {             root  /usr/share/nginx/html/mobile;

            index index.html ); g|png)$ {

                root /usr/share/nginx/ html/mobile;        }        location ~ .php$ {

                fastcgi_split_path_info ^(.+.php)(/.+)$;

                # NOTE: You should have " cgi.fix_pathinfo = 0;" in php.ini                # With php5-cgi alone:                  # With php5-fpm:

                #fastcgi_pass unix:/var/run/php5-fpm.sock;

                fastcgi_index index.php;                fastcgi_?    include fastcgi_params;        }

}

以上就介紹了Nginx.conf 配置小結,包括了方面的內容,希望對PHP教程有興趣的朋友有幫助。


陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
PHP:服務器端腳本語言的簡介PHP:服務器端腳本語言的簡介Apr 16, 2025 am 12:18 AM

PHP是一種服務器端腳本語言,用於動態網頁開發和服務器端應用程序。 1.PHP是一種解釋型語言,無需編譯,適合快速開發。 2.PHP代碼嵌入HTML中,易於網頁開發。 3.PHP處理服務器端邏輯,生成HTML輸出,支持用戶交互和數據處理。 4.PHP可與數據庫交互,處理表單提交,執行服務器端任務。

PHP和網絡:探索其長期影響PHP和網絡:探索其長期影響Apr 16, 2025 am 12:17 AM

PHP在過去幾十年中塑造了網絡,並將繼續在Web開發中扮演重要角色。 1)PHP起源於1994年,因其易用性和與MySQL的無縫集成成為開發者首選。 2)其核心功能包括生成動態內容和與數據庫的集成,使得網站能夠實時更新和個性化展示。 3)PHP的廣泛應用和生態系統推動了其長期影響,但也面臨版本更新和安全性挑戰。 4)近年來的性能改進,如PHP7的發布,使其能與現代語言競爭。 5)未來,PHP需應對容器化、微服務等新挑戰,但其靈活性和活躍社區使其具備適應能力。

為什麼要使用PHP?解釋的優點和好處為什麼要使用PHP?解釋的優點和好處Apr 16, 2025 am 12:16 AM

PHP的核心優勢包括易於學習、強大的web開發支持、豐富的庫和框架、高性能和可擴展性、跨平台兼容性以及成本效益高。 1)易於學習和使用,適合初學者;2)與web服務器集成好,支持多種數據庫;3)擁有如Laravel等強大框架;4)通過優化可實現高性能;5)支持多種操作系統;6)開源,降低開發成本。

揭穿神話:PHP真的是一種死語嗎?揭穿神話:PHP真的是一種死語嗎?Apr 16, 2025 am 12:15 AM

PHP沒有死。 1)PHP社區積極解決性能和安全問題,PHP7.x提升了性能。 2)PHP適合現代Web開發,廣泛用於大型網站。 3)PHP易學且服務器表現出色,但類型系統不如靜態語言嚴格。 4)PHP在內容管理和電商領域仍重要,生態系統不斷進化。 5)通過OPcache和APC等優化性能,使用OOP和設計模式提升代碼質量。

PHP與Python辯論:哪個更好?PHP與Python辯論:哪個更好?Apr 16, 2025 am 12:03 AM

PHP和Python各有優劣,選擇取決於項目需求。 1)PHP適合Web開發,易學,社區資源豐富,但語法不夠現代,性能和安全性需注意。 2)Python適用於數據科學和機器學習,語法簡潔,易學,但執行速度和內存管理有瓶頸。

PHP的目的:構建動態網站PHP的目的:構建動態網站Apr 15, 2025 am 12:18 AM

PHP用於構建動態網站,其核心功能包括:1.生成動態內容,通過與數據庫對接實時生成網頁;2.處理用戶交互和表單提交,驗證輸入並響應操作;3.管理會話和用戶認證,提供個性化體驗;4.優化性能和遵循最佳實踐,提升網站效率和安全性。

PHP:處理數據庫和服務器端邏輯PHP:處理數據庫和服務器端邏輯Apr 15, 2025 am 12:15 AM

PHP在數據庫操作和服務器端邏輯處理中使用MySQLi和PDO擴展進行數據庫交互,並通過會話管理等功能處理服務器端邏輯。 1)使用MySQLi或PDO連接數據庫,執行SQL查詢。 2)通過會話管理等功能處理HTTP請求和用戶狀態。 3)使用事務確保數據庫操作的原子性。 4)防止SQL注入,使用異常處理和關閉連接來調試。 5)通過索引和緩存優化性能,編寫可讀性高的代碼並進行錯誤處理。

您如何防止PHP中的SQL注入? (準備的陳述,PDO)您如何防止PHP中的SQL注入? (準備的陳述,PDO)Apr 15, 2025 am 12:15 AM

在PHP中使用預處理語句和PDO可以有效防範SQL注入攻擊。 1)使用PDO連接數據庫並設置錯誤模式。 2)通過prepare方法創建預處理語句,使用佔位符和execute方法傳遞數據。 3)處理查詢結果並確保代碼的安全性和性能。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它們
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器