You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu Server部署Laravel时二级页面404问题排查求助

Laravel二级页面404问题排查与解决

核心问题分析

你的问题主要出在Apache虚拟主机配置错误、mod_rewrite模块未启用,以及存在冗余跳转文件这几个点上,和FortiClient VPN无关(VPN仅负责网络连通,不影响路由解析)。以下是具体解决步骤:


1. 启用Apache mod_rewrite模块

Laravel的路由依赖Apache的重写模块,Ubuntu默认未开启,执行以下命令启用:

sudo a2enmod rewrite
sudo systemctl restart apache2

2. 修正虚拟主机配置

你的.conf文件存在两处关键错误:

  • Directory路径未匹配DocumentRoot(应为/var/www/html/public而非/var/www/html)
  • Options None禁止了重写所需权限,且未开启AllowOverride All让.htaccess生效

修改后的配置如下:

<VirtualHost *:80>
    DocumentRoot /var/www/html/public
    ServerName 192.168.xx.xxx

    <Directory /var/www/html/public>
        AllowOverride All
        Require all granted
        Options -MultiViews +FollowSymLinks
    </Directory>
</VirtualHost>

修改完成后重启Apache:

sudo systemctl restart apache2

3. 删除根目录冗余跳转文件

你在/var/www/html下添加的index.php跳转文件完全多余(DocumentRoot已直接指向public目录),反而会干扰路由解析,直接删除:

sudo rm /var/www/html/index.php

4. 确认public目录.htaccess权限

确保.htaccess文件对Apache进程可读:

sudo chmod 644 /var/www/html/public/.htaccess
sudo chown www-data:www-data /var/www/html/public/.htaccess

做完以上操作后,重新访问二级页面即可正常解析Laravel路由。

内容的提问来源于stack exchange,提问作者Didik Ariyana

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 09:13:19