【问题标题】:Laravel 403 Forbidden ErrorLaravel 403 禁止错误
【发布时间】:2017-08-18 00:52:04
【问题描述】:

正如标题所说,我在 Laravel 项目中收到错误 403(页面标题)。在本地,它可以正常工作,但是当我尝试将其上线时,它会在网络主机/我的域上给我:

禁止
您无权访问此服务器上的 /。
此外,在尝试使用 ErrorDocument 处理请求时遇到 404 Not Found 错误。

我从公共文件夹中删除了.htaccess 文件,但没有任何反应。 有什么解决办法吗?

【问题讨论】:

  • 你的文件夹结构是什么?即laravel/app 相对于httpdocs 在哪里?
  • 目录和文件的所有权和访问权限是什么?
  • 我在一个项目中遇到了类似的问题,清除 cookie 解决了。

标签: php laravel .htaccess


【解决方案1】:

你的 .htaccess 没有被 apache 解析,因为虚拟主机配置中缺少 AllowOverride All 指令。 Laravel 需要 .htaccess 文件。放回去。然后更改服务器上的 apache 虚拟主机配置以允许 .htaccess

<VirtualHost *:80>
    ServerName www.example.net
    DocumentRoot "/var/www/html/example3"
    <Directory /var/www/html/example3>
         DirectoryIndex index.php
         AllowOverride All
         Require all granted
    </Directory>
</VirtualHost>

像这样更改您的虚拟主机并通过sudo service apache2 restart 重新启动apache。

www.example.net/var/www/html/example3 替换为正确的详细信息。

【讨论】:

  • 我他妈的爱你,为这个问题苦苦挣扎了三个多小时
【解决方案2】:

如果你使用自己的Request,将授权函数更改为返回true:

public function authorize()
{
    return true;
}

就这么简单!

【讨论】:

    【解决方案3】:

    你可以试试这些命令。

    sudo chmod -R gu+w project_folder
    sudo chmod -R guo+w project_folder
    
    chmod -R 775 storage/
    chmod -R 775 bootstrap/cache
    

    【讨论】:

    • 不过,有趣的提醒并没有解决。
    猜你喜欢
    • 2017-12-20
    • 1970-01-01
    • 1970-01-01
    • 2016-06-02
    • 1970-01-01
    • 1970-01-01
    • 2021-04-08
    相关资源
    最近更新 更多