Laravel 设置 - "AllowOverride all" 导致 403

Laravel Setup - "AllowOverride all" is causing a 403

正在尝试在服务器上获取测试 Laravel 项目 运行。如果我导航到站点 URL,我会看到 Laravel 欢迎屏幕,但是 none 的路由正在运行。

为了解决这个问题,我更改了 laravel 网站指定的 .htaccess 文件。

问题是为了使用 .htaccess 我必须 "AllowOverride all" 在我的虚拟主机文件中,这导致显示 403 而不是欢迎页面。

我得到的错误是:

禁止

您无权访问此服务器上的 /。

此外,在尝试使用 ErrorDocument 处理请求时遇到 403 Forbidden 错误

出于测试目的,我将整个 laravel 文件夹设为 777,以确保不存在文件权限问题。

如有任何帮助,我们将不胜感激。谢谢

我的.htaccess 的内容:

Options +FollowSymLinks
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

我的 VirtaulHosts 的内容:

<VirtualHost *:80>

    ServerAdmin webmaster@localhost

    DocumentRoot /var/www/testProject1/public
    DirectoryIndex index.php
    <Directory />
            Options Indexes FollowSymLinks MultiViews
            AllowOverride all
            Order allow,deny
            Allow from all
    </Directory>
</VirtualHost>

<Directory> 必须引用绝对路径,而 <Location> 可以引用相对于文档根目录的路径。

因此,更改:

<Directory />

至:

<Directory /var/www/testProject1/public>

并且不要忘记重新启动 Apache。