Laravel 路线(航行者和其他路线)显示 404

Laravel 路线(航行者和其他路线)显示 404

我在 WSL2/Ubuntu 上使用 Apache 2.4.41。
我有一个 laravel 项目,安装了 Voyager。
我还为它使用了虚拟主机 (vh)。

访问应用程序 URLhttp://myapp成功。但是,Voyager 应用程序http://myapp/admin失败,出现 404 错误。

我的VirtualHost文件是:

<VirtualHost *:80>
    ServerName myapp

    DocumentRoot /var/www/myapp/public


    <Directory "/var/www/myapp/public">
        Options Indexes MultiViews
        AllowOverride None
        Require all granted
    </Directory>



    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

我的.htaccess文件是:

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

    RewriteEngine On

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

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

    # Send Requests To Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

答案1

您的 DocumentRoot 是 /var/www/myapp/public。

管理员是否在该路径下?如果不是,那么您需要在 Apache 配置中为其定义一个别名:

Alias /path/to/admin "/var/www/myapp/public/admin"

如果它已经在公共路径下,我会仔细检查 Apache 日志和分配给管理页面的 Linux 权限。

相关内容