Laravel 5.4通过子域运行所有路由

时间:2017-09-18 13:25:31

标签: php routes subdomain laravel-5.4

我刚刚在共享主机上使用Composer部署了Laravel 5.4,并且我遇到了一些我认为现在已修复的问题。

第一个是文件夹权限,现在已修复,所以至少我看到一个欢迎页面。

我注意到composer install永远不会创建一个路由目录,所以我上传了一个本地版本,它也从未在我修复的boostrap文件夹中创建一个缓存目录。

我在子域上安装了Laravel,我希望所有内容都通过子域运行,因为根文件夹有不同的应用程序。

如果我到达子域,欢迎页面会按预期打开,但是一旦我尝试使用其他路径,我就会收到此错误:

  

RouteCollection.php第145行中的NotFoundHttpException:

我看过其他人对子域名所做的事情,但对我来说没有任何作用。我不知道在安装过程中是否还有其他文件缺失

这就是我在Routes.php中所拥有的

Route::group(['domain' => 'subdomain.example.com'], function () {
    Route::get('/', function () {
        return view('welcome');
    });

    Route::get('test', function () {
        return view('welcome');
    });
});

我假设每个路由都需要在子域路由组中运行,或者我是否需要使用它,因为安装位于子域目录中,而vhost指向子域公共文件夹

1 个答案:

答案 0 :(得分:0)

事实证明,命令行在Plesk上使用的PHP版本存在问题。

目前Plesk在5.4中运行,而Laravel需要5.6。由于某种原因,Composer成功运行,似乎错过了下载一些文件。

我擦除了子域中的所有内容,感谢这个http://blogs.reliablepenguin.com/2015/08/18/using-php-composer-phar-with-non-default-php-install我能够使用php 5.6版运行作曲家

我不需要任何特殊的子域路由,因为所有东西都在子域中,并且这些路由按预期工作

Route::get('/', function () {
    return view('welcome');
});

Route::get('test', function () {
    return view('welcome');
});