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

Laravel 8.2部署至服务器后部分路由访问出现404错误求助

解决Laravel部署后部分页面404的问题

以下是针对你遇到的问题的排查和解决方向:

  • 检查服务器URL重写配置
    这是部署后路由404最常见的原因:

    • 若使用Apache:确认mod_rewrite模块已启用,且项目public目录下的.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>
      
    • 若使用Nginx:在站点配置中添加重写规则,确保所有请求转发至index.php:
      location / {
          try_files $uri $uri/ /index.php?$query_string;
      }
      
  • 彻底清除服务器端缓存
    即便你已执行过清除命令,仍需在服务器项目根目录重新执行以下命令,确保缓存完全清理:

    php artisan route:clear
    php artisan config:clear
    php artisan cache:clear
    php artisan view:clear
    

    若服务器使用了OPcache或Redis等缓存服务,需同步清除对应缓存。

  • 验证文件权限
    确保服务器运行用户(如www-data)拥有storage和bootstrap/cache目录的读写权限:

    chown -R www-data:www-data storage bootstrap/cache
    chmod -R 755 storage bootstrap/cache
    

    权限异常可能导致视图加载失败,进而表现为404错误。

  • 检查URL大小写与请求方式
    Linux服务器文件系统区分大小写,确认访问的/kategori/ekle与路由定义完全一致;同时该路由为Route::get,需确保使用GET方式访问,POST请求会直接返回404。

  • 确认站点根目录指向
    服务器站点根目录必须指向Laravel项目的public目录,而非项目根目录,否则路由无法被正确解析。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 16:12:06