首页 > 解决方案 > proxy_fcgi:错误 AH01071:出现错误“无法打开主脚本:/var/www/html/laravel/public/index.php(权限被拒绝)”

问题描述

我在 Azure 中有一个使用 Apache 托管的网站。我试图使用http://example.com/laravel/public访问该网站,它显示“访问被拒绝”消息,当我检查错误日志消息时,它显示 proxy_fcgi:error AH01071 消息,如标题。我不确定是 htaccess 配置问题还是其他配置导致了这个问题。请帮忙。

在我的 .htaccess 中,我配置了以下内容:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_URI} !^public
    RewriteRule ^ index.php [L]

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>

标签: phplaravelapache

解决方案


似乎 php-fpm 对 index.php 没有读取权限您可以在终端上运行以下命令以了解哪个用户实际上正在运行 php-fpm : # ps aux | grep php-fpm | awk '{print $1}'

然后,您可以使用以下命令向该特定用户授予对 index.php 的权限(将 <php_fpm_user> 替换为第一个命令的结果): # setfacl -m u:<php_fpm_user>:r /var/www/html/laravel/public/index.php


推荐阅读