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

Laravel 5.2部署Ubuntu16.04后非首页路由出现404 Not Found问题

解决Laravel 5.2在Ubuntu 16.04 Apache下的路由404问题

看起来你的首页能正常访问,说明虚拟主机的根目录指向public文件夹是没问题的,问题大概率出在Apache的URL重写配置上——Laravel的路由依赖.htaccess文件来将请求转发到index.php,但Apache默认可能没开启rewrite模块,或者虚拟主机里没允许覆盖.htaccess规则。

下面是具体的解决步骤:

1. 启用Apache的rewrite模块

先检查rewrite模块是否已经开启,执行命令:

sudo a2enmod rewrite

如果提示模块已经启用就跳过,否则执行后重启Apache:

sudo systemctl restart apache2

2. 修改虚拟主机配置文件,允许.htaccess覆盖规则

找到你的虚拟主机配置文件(通常在/etc/apache2/sites-available/目录下,比如www.xxx.com.conf),编辑它:

sudo nano /etc/apache2/sites-available/www.xxx.com.conf

在<Directory /path/to/your/laravel/public>块里,把AllowOverride None改成AllowOverride All,修改后的配置大概是这样:

<VirtualHost *:80>
    ServerName www.xxx.com
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/your-laravel-project/public

    <Directory /var/www/your-laravel-project/public>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Require all granted
    </Directory>

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

保存并退出后,重启Apache生效:

sudo systemctl restart apache2

3. 确认.htaccess文件存在且内容正确

进入你的Laravel项目的public目录,检查是否有.htaccess文件,如果没有,从Laravel 5.2的默认模板创建一个,内容如下:

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

    RewriteEngine On

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

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

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

如果文件已经存在,对比一下内容是否一致,确保没有被修改过。

完成以上步骤后,再试试访问/login或者其他路由,应该就能正常访问了。如果还是有问题,可以检查Apache的错误日志(/var/log/apache2/error.log),看看有没有更具体的错误提示。

内容的提问来源于stack exchange,提问作者Nil the babe

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 06:47:12