1. 程式人生 > >Mac系統nginx 安裝與配置

Mac系統nginx 安裝與配置

使用brew安裝nginx

brew install nginx

加入開機啟動

sudo cp /usr/local/opt/nginx/homebrew.mxcl.nginx.plist /Library/LaunchDaemons/
sudo launchctl load -w /Library/LaunchDaemons/homebrew.mxcl.nginx.plist

配置檔案路徑

/usr/local/etc/nginx/

nginx 幫助資訊

tianshl:~ tianshl$ nginx -h
nginx version: nginx/1.12.1
Usage: nginx [-?hvVtTq] [-s signal
] [-c filename] [-p prefix] [-g directives] Options: -?,-h : this help -v : show version and exit -V : show version and configure options then exit -t : test configuration and exit -T : test configuration, dump it and exit -q : suppress non-error messages during configuration
testing -s signal : send signal to a master process: stop, quit, reopen, reload -p prefix : set prefix path (default: /usr/local/Cellar/nginx/1.12.1/) -c filename : set configuration file (default: /usr/local/etc/nginx/nginx.conf) -g directives : set global directives out of configuration file

常用命令

1. 啟動命令: sudo nginx
2. 重啟命令: sudo nginx -s reload
3. 停止命令: sudo nginx -s stop

反向代理

如果location中只配置proxy_pass轉發時不會攜帶HTTP的頭資訊
加上Proxy Settings後, 代理的時候會把連結原始的請求資訊一起轉發
# 如果有多個conf同時使用一個upstream server, 可以將這個配置到nginx.conf中.
upstream api_server {
    server 127.0.0.1:8000;
}

location ~ /api/ {
    proxy_pass http://api_server;
    # Proxy Settings
    proxy_redirect     off;
    proxy_set_header   Host             $host;
    proxy_set_header   X-Real-IP        $remote_addr;
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
    proxy_max_temp_file_size 0;
    proxy_connect_timeout      90;
    proxy_send_timeout         90;
    proxy_read_timeout         90;
    proxy_buffer_size          4k;
    proxy_buffers              4 32k;
    proxy_busy_buffers_size    64k;
    proxy_temp_file_write_size 64k;
}