nginx配置一(全域性配置)

2021-09-01 19:21:59 字數 2531 閱讀 7441

user:是個主模組指令,指定nginx worker程序執行使用者以及使用者組.

語法:user user [group] 

預設值:nobody nobody 

如果主程序以root執行,nginx將會呼叫setuid()/setgid()來設定使用者/組,如果沒有指定組,那麼將使用與使用者名稱相同的組,預設情況下會使用nobody使用者與nobody組(或者nogroup),或者在編譯時指定的--user=user和--group=group的值。

worker-processes:是個主模組指令,指定了nginx要開啟的程序數。每個nginx程序平均消耗10mb-12mb記憶體,根據經驗,一般指定乙個程序足夠了,如果是多核cpu,建議指定和cpu的數量一樣多的程序數即可。

error_log:是個主模組指令,用來定義全域性錯誤日誌檔案。日誌輸出級別有debug,info,notice,warn,error,crit可供,其中,debug輸出日誌最為詳細,而crit輸出日誌最少。

nginx支援為每個虛擬主機設定不同的錯誤日誌檔案,這一點要好於lighttpd.

如果你在編譯安裝nginx時加入了--with-debug引數,你可以使用以下配置:

error_log logfile [debug_core | debug_alloc | debug_mutex | debug_event | debug_http | debug_imap];
注意error_log off並不能關閉日誌記錄,而會將日誌檔案寫入乙個檔名為off的檔案中,如果你想關閉錯誤日誌功能 ,應使用以下配置:

error_log  /dev/null crit;
同時要注意執行nginx的使用者是否錯誤檔案寫的許可權。

pid:是個主模組指令,用來指定程序id的儲存檔案位置。

可以使用kill命令來傳送相關訊號,例如如果想要重新讀取配置檔案,則可以使用:

kill -hup `cat /var/run/nginx.pid`
worker_rlimit_nofile:主模組指令,程序能夠開啟的最多的檔案描述符數。

events:用來指定nginx的工作模式及連線數上限。

use:是事件指令,用來指定nginx的工作模式。

語法:use [ kqueue | rtsig | epoll | /dev/poll | select | poll | eventport ] 

nginx支援使用下列的方式處理連線。

·select - 標準方式,如果當前平台沒有其他有效的方式,則會預設編譯。你可以使用--with-select_module和--without-select_module編譯引數來啟用或禁止該模組。

·poll - 標準方式,如果當前平台沒有其他有效的方式,則會預設編譯。你可以使用--with-poll_module和--without-poll_module編譯引數來啟用或禁止該模組。

·kqueue - 高效方式,適用於freebsd 4.1+, openbsd 2.9+, netbsd 2.0和macos x。執行於多處理器的macos x使用kqueue可能引起某些問題。

·epoll(linux首選)- 高效方式,適用於linux 2.6+。在某些平台,例如suse 8.2,它們有一些關聯包使2.4版本核心就能夠支援epoll。

·rtsig - 可執行的實時訊號,執行於linux 2.2.19+。預設情況下系統整體無法有超過1024個posix實時(佇列的)訊號,顯然這對於高負載伺服器是不夠用的,因此可以通過核心引數/proc/sys/kernel/rtsig-max增加這個佇列大小,然而,linux 2.6.6-mm2以後,這個引數不再可用,並且每個處理器都是乙個單獨的訊號佇列,其大小通過rlimit_sigpending指定,當佇列溢位時,nginx將丟棄它們並且使用poll方式處理連線直到他們恢復正常。

·/dev/poll - 高效方式,適用於solaris 7 11/99+, hp/ux 11.22+ (eventport), irix 6.5.15+和tru64 unix 5.1a+。

·eventport - 高效方式,適用於solaris 10,

worker_connections:是個事件模組指令,用於定義nginx每個程序的最大連線數,預設1024.最大客戶端連線由worker_processes和worker_connections決定,即max_clients = worker_processes*worker_connections,在作為反向**時變為:max_clients = worker_processes*worker_connections/4。程序的最大連線數受linux系統程序的最大開啟檔案數限制,在執行作業系統命令"ulimit -n 65536" 後worker_connections的設定才能生效。

nginx全域性命令配置

剛才安裝了nginx,命令需要去sbin目錄執行,比較麻煩,設定下全域性命令,就無需進入nginx的sbin目錄執行nginx命令了,過程如下 vim etc profile,如下所述 執行 source etc profile 讓配置檔案重新生效一下即可 解決辦法 home nginx sbin ...

nginx配置一 基本配置

1 安裝完成nginx之後,首先需要明白的,資料返回的流程是怎麼樣的?這裡假設我們的後端伺服器是tomcat,web伺服器我們使用nginx。那麼請求流程如下圖 如上圖所示 我們的請求首先是被我們的web服務nginx攔截之後,再去請求後台服務的tomcat,然後後端的服務tomcat將我們的資料通...

3 1 Nginx全域性配置說明

user nginx nginx 啟動nginx 作程序的 和組 worker processes number auto 啟動nginx 作程序的數量 worker cpu affinity 00000001 00000010 00000100 00001000 將nginx 作程序繫結到指定的c...