通过实践和错误,有时候会遇到nginx不解析php的问题。在这篇文章中,我们将讨论如何解决这个问题并重新启动您的Nginx Web服务器。
1. 确认PHP已安装并可用
在处理Nginx不解析PHP之前,请确保已将PHP正确安装在您的系统上,并可通过命令行访问。您可以打开终端或控制台应用程序,然后输入以下命令来检查PHP是否正确安装:
php -v
如果PHP成功安装,则应该能够看到它的版本号。否则,请按照您的系统要求正确安装PHP。
2. 修改NGINX配置文件
打开nginx.conf(或其他您正在使用的配置文件)并找到以下代码:
location / {
# 将请求转发到本地的8080端口
proxy_pass http://localhost:8080;
}
将“proxy_pass”更改为以下代码:
location ~ \.php$ {
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
这告诉Nginx将.php文件发送到PHP解释器以进行处理。确保保存和退出文件。
3. 重新启动Nginx并检查
执行以下命令以重新启动Nginx服务器:
sudo service nginx restart
现在,您可以通过将.php文件上传到您的Web根目录并导航到它来测试是否解析了PHP。如果PHP已正确配置,则您应该看到在该文件中包含的代码的结果。
4. 没有成功?尝试这个
如果您尝试上述步骤并且仍无法使Nginx解析PHP,请打开PHP-FPM配置文件。这个文件可能被称为php-fpm.conf或php-fpm.d/www.conf。
查找以下行:
listen = 127.0.0.1:9000
然后将其替换为以下行:
listen = /run/php/php7.4-fpm.sock
确保保存并退出文件,并再次重新启动Nginx服务器。
结论
在这篇文章中,我们解决了Nginx不解析PHP的问题。首先,我们确认PHP已正确安装并可用。然后,我们修改了Nginx配置文件以便解析PHP并重新启动Nginx服务器。如果您仍然遇到此问题,请检查PHP-FPM配置文件并将其更新为最新配置。
您应该始终包含备份文件,并在对系统进行更改之前仔细检查它们。感谢您的阅读,祝您好运!