如何修复验收环境中的Laravel 404错误?

How to fix Laravel Error 404 in acceptance environment?

我尝试在新环境中安装我的 Laravel 应用程序 acceptance,

composer install 之后(没有错误)

当我检查 url 时,它被重定向到 /login,这是正常的

问题:它是 returns 404 错误,这个错误来自服务器而不是 Laravel 因为我在我的应用程序中自定义了 404 错误

服务器似乎只接受 / 路径:

当我更换路由器时也是如此:

来自

Route::get('/', function () {
    if (Auth::check()) return redirect('/myprofile');
    return redirect('/login');
});

为此:

Route::get('/', function () {
    return 'hello world'
});

有效,我可以看到 hello world

当我 route:list

时路线 /login 存在

首先检查 Apache 的 mod_rewrite 模块是否已启用,如果尚未启用,请在命令下方 运行 启用它,否则跳转到答案的第二部分

sudo a2enmod rewrite
sudo service apache2 restart

同时在您的虚拟主机配置中添加以下配置块以启用 laravels .htaccess 规则

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

相应地更改 /var/www/ 路径