Laravel 5.1 - Dreamhost VPS - 总是获得404例外

时间:2016-04-22 21:12:08

标签: php .htaccess http-status-code-404 laravel-5.1 vps

我过去两天一直在打破我的头脑,仍然没有解决方案。我的Laravel 5.1中的所有路由都抛出NotFoundHttpException。

我的文件夹结构如下所示:

enter image description here

其他一些信息

  • example.com和abc.example.com都将网络目录设置为 /home/username/example.com/myproject/public
  • 我在公共文件夹中有一个.htaccess文件,看起来像

                 选项-MultiViews     

    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]
    

作为图片:  enter image description here

  • Debugbar显示以下错误:

enter image description here

任何帮助都将受到高度赞赏。我尝试了几乎所有在Google上找到的解决方案。没有用。

1 个答案:

答案 0 :(得分:0)

因此,在与牙齿和指甲斗争解决这个问题后,我决定采取不同的方法,让我松了一口气,我的工作!

  1. 我没有在“myproject”文件夹中部署,而是直接在example.com下复制了所有Laravel文件。因此,如果您正在克隆您的存储库(就像我一样),我会手动将文件复制一级。

  2. 创建了正确的.env文件

  3. 按顺序执行以下命令:

    composer dump-autoload

    php artisan config:cache

  4. 瞧,瞧!事情已经开始了!

    现在......需要注意一些其他重要的事情。

    如果您正在使用子域路由,则必须设置域名,使其不会放置www。在我的情况下,http://example.com变为http://www.example.com并且我的控制器操作失败了。我相信有一个解决方法。如果我找到并回答,将更新此答案。