nginx配置项目路径时,出现 访问域名就下载index.php文件的问题。其实主要是因为php-fpm没有读PHP文件,导致文件被下载。
1.配置nginx.conf
server {
listen 80;
server_name localhost;
location / {
root /Users/v_hanguiqin/PhpstormProjects/chenghui-niska-niska-master/public;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location ~ \.php$ {
root /Users/v_hanguiqin/PhpstormProjects/chenghui-niska-niska-master/public;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
include fastcgi.conf;
}
}
重启
nginx nginx -s reload
2.查看php-fpm
php-fpm -t
报错:
[03-Jun-2021 14:56:30] ERROR: failed to open configuration file ‘/private/etc/php-fpm.conf’: No such file or directory (2)
[03-Jun-2021 14:56:30] ERROR: failed to load configuration file ‘/private/etc/php-fpm.conf’
[03-Jun-2021 14:56:30] ERROR: FPM initialization failed
执行
sodo cp /private/etc/php-fpm.conf.default /private/etc/php-fpm.conf
再次执行
php-fpm
报错:
[03-Jun-2021 15:08:56] ERROR: failed to open error_log (/usr/var/log/php-fpm.log): No such file or directory (2)
[03-Jun-2021 15:08:56] ERROR: failed to post process the configuration
[03-Jun-2021 15:08:56] ERROR: FPM initialization failed
发现根本就没有这个目录/usr/var/log
执行
vim /private/etc/php-fpm.conf
将;error_log = log/php-fpm.log
改成
error_log = /usr/local/var/log/php-fpm.log
wq
保存
报错E45: 'readonly' option is set (add ! to override)
输入 :w !sudo tee %
回车就保存好啦
执行
php-fpm
还有其他报错:
06-Nov-2020 14:54:25] NOTICE: [pool www] ‘user’ directive is ignored when FPM is not running as root
[06-Nov-2020 14:54:25] NOTICE: [pool www] ‘group’ directive is ignored when FPM is not running as root
解决
sudo php-fpm
[10-Nov-2020 17:33:17] ERROR: unable to bind listening socket for address ‘127.0.0.1:9000’: Address already in use (48)
[10-Nov-2020 17:33:17] ERROR: FPM initialization failed
9000端口被占用
1查看是否php-fpm 处于开启状态,服务器并未杀死php-fpm的进程。
netstat -lntup | grep 9000
2 停止原来php-fpm的进程,
killall php-fpm
3.重启开启
sudo php-fpm