這裏使用 brew 來安裝軟件。php
brew install nginx
brew info nginx
安裝後,主要看brew把nginx安裝到哪裏去了,默認是安裝到/usr/local/etc/nginx/nginx.conf
html
若是很差使,統一在命令前面加上sudo;java
nginx -v
brew services start nginx
訪問:http://localhost:8080/
後,看到以下內容就是啓動成功了。
nginx
若是沒有啓動成功,查看一下進程,ps -ef|grep nginx
:
git
# 查看報錯文件的路徑 ➜ ~ nginx -V nginx version: nginx/1.17.9 built by clang 11.0.0 (clang-1100.0.33.17) built with OpenSSL 1.1.1d 10 Sep 2019 (running with OpenSSL 1.1.1f 31 Mar 2020) TLS SNI support enabled configure arguments: --prefix=/usr/local/Cellar/nginx/1.17.9 --sbin-path=/usr/local/Cellar/nginx/1.17.9/bin/nginx --with-cc-opt='-I/usr/local/opt/pcre/include -I/usr/local/opt/openssl@1.1/include' --with-ld-opt='-L/usr/local/opt/pcre/lib -L/usr/local/opt/openssl@1.1/lib' --conf-path=/usr/local/etc/nginx/nginx.conf --pid-path=/usr/local/var/run/nginx.pid --lock-path=/usr/local/var/run/nginx.lock --http-client-body-temp-path=/usr/local/var/run/nginx/client_body_temp --http-proxy-temp-path=/usr/local/var/run/nginx/proxy_temp --http-fastcgi-temp-path=/usr/local/var/run/nginx/fastcgi_temp --http-uwsgi-temp-path=/usr/local/var/run/nginx/uwsgi_temp --http-scgi-temp-path=/usr/local/var/run/nginx/scgi_temp --http-log-path=/usr/local/var/log/nginx/access.log --error-log-path=/usr/local/var/log/nginx/error.log --with-compat --with-debug --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_degradation_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-ipv6 --with-mail --with-mail_ssl_module --with-pcre --with-pcre-jit --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module
path=/usr/local/var/log/nginx/error.logweb
tail -f *
# 答應我,有任何一丁點修改過nginx的配置文件後,都第一時間從新加載一遍nginx 好嗎! # 答應我,有任何一丁點修改過nginx的配置文件後,都第一時間從新加載一遍nginx 好嗎! # 答應我,有任何一丁點修改過nginx的配置文件後,都第一時間從新加載一遍nginx 好嗎!否則你就無法使 你修改的過的功能。 brew services restart nginx
brew services stop nginx
在/usr/local/etc/nginx/nginx.conf
主配置文件裏 ,配置一個包含屬性,內容以下:shell
# 省略... include servers/*; # 意思是加載當前目錄下 .servers文件夾內的配置文件,都會被加載進來
在/usr/local/etc/nginx/servers
路徑下,配置了一個轉發服務,文件叫localhost_80.conf
,內容以下:dom
server { listen 80; server_name localhost; root "/Users/thoth/program/nginxweb"; location / { index index.php index.html; error_page 400 /error/400.html; error_page 403 /error/403.html; error_page 404 /error/404.html; error_page 500 /error/500.html; error_page 501 /error/501.html; error_page 502 /error/502.html; error_page 503 /error/503.html; error_page 504 /error/504.html; error_page 505 /error/505.html; error_page 506 /error/506.html; error_page 507 /error/507.html; error_page 509 /error/509.html; error_page 510 /error/510.html; autoindex off; } location ~ \.php(.*)$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_split_path_info ^((?U).+\.php)(/?.+)$; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; include fastcgi_params; } }
這個能夠做爲你的模版,你修改一下server_name
、root
便可。ide
server_name www.test.com; root "/Users/thoth/program/testdir";
nginx -t nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok nginx: [emerg] open() "/usr/local/Cellar/nginx/1.17.9/logs/error.log" failed (2: No such file or directory) # 有報錯 nginx: configuration file /usr/local/etc/nginx/nginx.conf test failed ➜ ~ nginx -t nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful
➜ ~ ps -ef | grep nginx 0 6419 1 0 6:59下午 ?? 0:00.01 nginx: master process /usr/local/opt/nginx/bin/nginx -g daemon off; -2 6424 6419 0 6:59下午 ?? 0:00.00 nginx: worker process 501 6474 1018 0 7:03下午 ttys016 0:00.00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn --exclude-dir=.idea --exclude-dir=.tox nginx
關閉php-fpmsvn
sudo killall php-fpm
啓動php-fpm
sudo php-fpm
若是用brew安裝的能夠
brew services start php
重啓php-fpm
先關閉php-fpm、再自動php-fpm便可
sudo killall php-fpm sudo php-fpm
https://www.jianshu.com/p/6c7cb820a020
http://jalan.space/2017/01/12/2017-01-13-mac-os-nginx/
https://blog.csdn.net/weixin_42896137/article/details/88797094
https://blog.csdn.net/leiflyy/article/details/77717524 # mac 啓動php 報錯解決