You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nginx服务器中PHP文件无法执行仅下载的问题求助

解决Nginx下PHP文件被下载而非执行的问题

以下是针对性的排查和修复步骤:

1. 确认PHP-FPM服务状态

  • 执行命令检查PHP-FPM是否正常运行:
    systemctl status php8.1-fpm
    
  • 如果服务未启动,执行启动命令并设置开机自启:
    systemctl start php8.1-fpm
    systemctl enable php8.1-fpm
    

2. 验证Nginx配置细节

  • 检查snippets/fastcgi-php.conf文件是否存在(默认路径/etc/nginx/snippets/),确保文件包含以下核心参数:
    fastcgi_param	SCRIPT_FILENAME	$document_root$fastcgi_script_name;
    include		fastcgi_params;
    
  • 确认fastcgi_pass指定的Socket路径有效:
    执行ls -l /var/run/php/php8.1-fpm.sock查看文件是否存在,且Nginx运行用户(通常为www-data)有访问权限。若权限异常,修改PHP-FPM配置文件(/etc/php/8.1/fpm/pool.d/www.conf)中的以下参数:
    listen.owner = www-data
    listen.group = www-data
    
    修改后重启PHP-FPM:systemctl restart php8.1-fpm

3. 调整Nginx的请求转发规则

修改location /块的try_files配置,确保PHP请求能被正确转发到PHP-FPM处理:

location / {
    try_files $uri $uri/ /index.php?$query_string;
}

4. 检查文件权限

确保网站目录及PHP文件的权限允许Nginx读取:

chown -R www-data:www-data /var/www/nerdowallet_backend/public
chmod -R 755 /var/www/nerdowallet_backend/public

5. 重载Nginx配置

  • 先验证配置语法正确性:
    nginx -t
    
  • 验证通过后重载配置:
    systemctl reload nginx
    

完成以上步骤后,重新访问index.php文件即可正常执行。

内容的提问来源于stack exchange,提问作者Thevindu Kulasinghe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 02:50:03