【问题标题】:404 Error after uploading laravel 5.2 project to the shared host上传 laravel 5.2 项目到共享主机后出现 404 错误
【发布时间】:2017-01-24 19:34:20
【问题描述】:

我们最近上传了一个 laravel 5.2 项目到服务器,问题是它显示的第一页是登录页面,但是其他页面都不起作用并返回 404 错误。 这是.htaccess:

<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 ^(.*)/$ public/$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>

如果有人能帮我解决这个问题,我会很高兴。

【问题讨论】:

    标签: .htaccess laravel-5 shared-hosting


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

    在这行。您的 apache 是否设置为目录 /path/to/project /public。 如果是这种情况,那么所有请求都会到达公用文件夹。这意味着您应该将 .htaccess 文件放在 /public 文件夹中。

    那么你的 RewriteRule 应该是:

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

    因为你已经在公用文件夹中了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-10-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-10
      • 1970-01-01
      • 2019-12-08
      相关资源
      最近更新 更多