centos7 nginx 访问php空白页面
时间: 2023-06-18 21:03:31 浏览: 172
centos 7 nginx php
如果在 CentOS 7 上使用 Nginx 作为 Web 服务器,并且在访问 PHP 页面时出现空白页面,可能是 PHP-FPM 没有正常工作的原因。您可以按照以下步骤解决该问题:
1. 检查 PHP-FPM 是否正在运行。
```
systemctl status php-fpm
```
如果没有运行,请使用以下命令启动 PHP-FPM:
```
systemctl start php-fpm
```
2. 检查 Nginx 配置文件中的 PHP-FPM 配置是否正确。
在 Nginx 配置文件中,通常会有类似以下的配置:
```
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
```
请确保 fastcgi_pass 指向正确的 PHP-FPM socket 文件路径,例如 /var/run/php-fpm/php-fpm.sock。
3. 检查 Nginx 和 PHP-FPM 用户组是否匹配。
在 CentOS 7 上,默认情况下,Nginx 运行在 nginx 用户组中,而 PHP-FPM 运行在 apache 用户组中。您可以使用以下命令查看它们的用户组:
```
ps aux | grep nginx
ps aux | grep php-fpm
```
请确保这两个进程都运行在相同的用户组中,例如 nginx。
4. 检查 SELinux 配置是否正确。
SELinux 是 CentOS 7 默认启用的强制访问控制机制。如果配置不正确,可能会阻止 Nginx 访问 PHP-FPM。您可以使用以下命令检查 SELinux 配置:
```
sestatus
```
如果 SELinux 处于 enforcing 模式,请确保以下命令将 Nginx 和 PHP-FPM 标记为 httpd_sys_script_exec_t 类型:
```
semanage fcontext -a -t httpd_sys_script_exec_t '/usr/share/nginx/html(/.*)?'
restorecon -R /usr/share/nginx/html
```
这些步骤应该可以解决您的问题。如果问题仍然存在,请检查 Nginx 和 PHP-FPM 的日志文件以获取更多信息。
阅读全文