Laravel在本地搭建多站点的示例分析-创新互联

小编给大家分享一下Laravel在本地搭建多站点的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

为且末等地区用户提供了全套网页设计制作服务,及且末网站建设行业解决方案。主营业务为成都做网站、网站建设、且末网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

方案

目前决定先分为两个域名.

一个是API的接口域名,我定为:api.hellolux.com

一个是后台管理域名,我定为:admin.hellolux.com

实现

在Controller层新增文件夹

在app\Http\Controllers目录下,新增两个文件夹,分别为Api和Admin.

修改RouteServiceProvider.php文件

在app\Providers\RouteServiceProvider.php中,修改

# 新增项目名称的命名空间
protected $AdminNamespace = 'App\Http\Controllers\Admin';
protected $ApiNamespace = 'App\Http\Controllers\Api';

public function map()
{
    # 根据项目名称定义路由
    $this->mapApiRoutes();
    $this->mapAdminRoutes();
}

# 新增两个方法
protected function mapAdminRoutes()
{
    Route::group([
        'domain' => config('app.admin_domain'),
        'namespace' => $this->AdminNamespace,
    ], function ($router) {
        require base_path('routes/admin.php');
    });
}
protected function mapApiRoutes()
{
    Route::group([
        'domain' => config('app.api_domain'),
        'namespace' => $this->ApiNamespace,
    ], function ($router) {
        require base_path('routes/api.php');
    });
}

在config/app.php新增

'api_domain' => env('API_DOMAIN', 'api.hellolux.com'),
'admin_domain' => env('ADMIN_DOMAIN', 'admin.hellolux.com'),

在.env中新增

API_DOMAIN=api.hellolux.com
ADMIN_DOMAIN=admin.hellolux.com

在routes目录下,新增api.php和admin.php两个文件

# api.php
use Illuminate\Http\Request;

Route::get('/', "IndexController@index");



# admin.php
use Illuminate\Http\Request;

Route::get('/', "IndexController@index");

在/etc/hosts中增加域名

# Local_Manage
127.0.0.1   api.hellolux.com
127.0.0.1   admin.hellolux.com

/etc/apache2/http.conf中取消vhosts注释

Include /private/etc/apache2/extra/httpd-vhosts.conf

在/etc/apache2/extra/httpd-vhosts.conf中,新增


    ServerAdmin hellolux@163.com
    DocumentRoot "/Users/hellolux/Documents/Github/Local_Manage/public"
    ServerName hellolux
    ServerAlias *.hellolux.com
    ErrorLog "/Users/hellolux/Documents/Github/Local_Manage/logs/error.log"
    CustomLog "/Users/hellolux/Documents/Github/Local_Manage/logs/access.log" common

重启apache

sudo apachevtl restart

完成

浏览器打开admin.hellolux.com和api.hellolux.com分别会显示具体的页面了.

以上是“Laravel在本地搭建多站点的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


文章名称:Laravel在本地搭建多站点的示例分析-创新互联
网页网址:http://abwzjs.com/article/coiicj.html