daemon off;生產環境中不要使用"daemon"和"master_process"指令,這些選項僅用於開發調試。你可使用daemon off在生產環境中,但對性能提高沒有幫助,在生產環境中永遠不要使用master_process off。
env MALLOC_OPTIONS;
env PERL5LIB=/data/site/modules;
env OPENSSL_ALLOW_PROXY_CERTS=1;
debug_points stop;在Nginx中有一些調試斷點,它們容許Nginx使用調試器,或者停止和創建核心文件。
error_log LOGFILE [debug_core | debug_alloc | debug_mutex | debug_event | debug_http | debug_imap];注意error_log off並不能關閉日誌記錄功能,它將日誌文件寫入一個文件名爲off的文件中,若是你想關閉錯誤日誌記錄功能,應使用如下配置:
error_log /dev/null crit;一樣注意0.7.53版本,nginx在讀取配置文件指定的錯誤日誌路徑前將使用編譯的默認日誌位置,若是運行nginx的用戶對該位置沒有寫入權限,nginx將輸出以下錯誤:
[alert]: could not open error log file: open() "/var/log/nginx/error.log" failed (13: Permission denied)
location = /robots.txt {
log_not_found off;
}
include vhosts/*.conf;注意:直到0.6.7版本,這個參數包含的文件路徑爲你在編譯時指定的--prefix=目錄,默認是/usr/local/nginx,若是你不想指定這個目錄下的文件,請寫絕對路徑。
lock_file /var/log/lock_file;Nginx使用鏈接互斥鎖進行順序的accept()系統調用,若是Nginx在i386,amd64,sparc64,與ppc64環境下使用gcc, Intel C++,或SunPro C++進行編譯,Nginx使用原子指示使互斥生效,在其餘狀況下鎖文件會被使用。
master_process off;生產環境中不要使用"daemon"和"master_process"指令,這些選項僅用於開發調試。
pid /var/log/nginx.pid;指定pid文件,可使用kill命令來發送相關信號,例如你若是想從新讀取配置文件,則可使用:kill -HUP `cat /var/log/nginx.pid`
$ openssl engine -t
(cryptodev) BSD cryptodev engine
[ 可用 ]
(dynamic) Dynamic engine loading support
[ 不可用 ]
timer_resolution 100ms;這個參數容許縮短gettimeofday()系統調用的時間,默認狀況下gettimeofday()在下列都調用完成後纔會被調用:kevent(), epoll, /dev/poll, select(), poll()。
location / {在Drupal / FastCGI中:
try_files /system/maintenance.html
$uri $uri/index.html $uri.html @mongrel;
}
location @mongrel {
proxy_pass http://mongrel;
}
location / {在這個例子中,這個try_files指令:
try_files $uri $uri/ @drupal;
}
location ~ \.php$ {
try_files $uri @drupal;
fastcgi_pass 127.0.0.1:8888;
fastcgi_param SCRIPT_FILENAME /path/to$fastcgi_script_name;
# other fastcgi_param
}
location @drupal {
fastcgi_pass 127.0.0.1:8888;
fastcgi_param SCRIPT_FILENAME /path/to/index.php;
fastcgi_param QUERY_STRING q=$request_uri;
# other fastcgi_param
}
location / {等同於下列配置:
try_files $uri $uri/ @drupal;
}
location / {這段:
error_page 404 = @drupal;
log_not_found off;
}
location ~ \.php$ {指try_files在將請求提交到FastCGI服務以前檢查存在的php文件。
try_files $uri @drupal;
fastcgi_pass 127.0.0.1:8888;
fastcgi_param SCRIPT_FILENAME /path/to$fastcgi_script_name;
# other fastcgi_param
}
location / {
try_files $uri $uri/ @wordpress;
}
location ~ \.php$ {
try_files $uri @wordpress;
fastcgi_pass 127.0.0.1:8888;
fastcgi_param SCRIPT_FILENAME /path/to$fastcgi_script_name;
# other fastcgi_param
}
location @wordpress {
fastcgi_pass 127.0.0.1:8888;
fastcgi_param SCRIPT_FILENAME /path/to/index.php;
# other fastcgi_param
}
user www users;
worker_processes 4;指定每一個進程到一個CPU:
worker_cpu_affinity 0001 0010 0100 1000;
worker_processes 2;指定第一個進程到CPU0/CPU2,指定第二個進程到CPU1/CPU3,對於HTT處理器來講是一個不錯的選擇。
worker_cpu_affinity 0101 1010;
worker_processes 5;因爲如下幾點緣由,Nginx可能須要運行不止一個進程