Maison > cadre php > Laravel > le corps du texte

Comment créer plusieurs sites localement dans Laravel

藏色散人
Libérer: 2020-11-30 14:35:22
avant
4701 Les gens l'ont consulté

La colonne tutorielle suivante de Laravel Framework vous présentera comment créer plusieurs sites localement avec Laravel. J'espère qu'elle sera utile aux amis qui en ont besoin !

Comment créer plusieurs sites localement dans Laravel

Avant-propos

J'ai beaucoup réfléchi Dernièrement, je veux faire ceci et cela. Mais j'ai rencontré un problème très inconfortable :

  1. Je n'ai pas organisé tous les codes passés, et il n'y a pas de chemin ni de plan de stockage.
  2. Il n'existe pas de solution de gestion unifiée pour ces codes.

Donc pour moi, le plus important en ce moment est de trier d'abord le code, puis de développer un ensemble de mes propres outils de gestion localisés.

Cet outil est actuellement développé pour Laravel. Il adopte la stratégie de séparation du front et du backend afin que plusieurs terminaux puissent avoir des API correspondantes pour une utilisation future

Ensuite, je ne le fais pas. J'aime particulièrement ouvrir plusieurs Plusieurs Laravel sont en cours de développement, donc inclure plusieurs noms de domaine dans un framework Laravel est devenu l'un des principaux problèmes

Aujourd'hui, je vais l'enregistrer avec soin. en localisation. .En fait, la mise en place d'autres systèmes est presque la même.

Le plan

Actuellement décidé de le diviser en deux noms de domaine.

L'un est le nom de domaine d'interface de l'API, que j'ai décidé d'être : api.hellolux.com

L'un est le nom de domaine de gestion backend, je l'ai défini comme : admin.hellolux. .com

implémentation

Ajoutez un nouveau dossier dans la couche Controller

Dans le répertoire appHttpControllers, ajoutez deux nouveaux dossiers, à savoir Api et Admin.

Modifiez le fichier RouteServiceProvider.php

Dans appProvidersRouteServiceProvider.php, modifiez

# 新增项目名称的命名空间
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');
    });
}
Copier après la connexion

et ajoutez

'api_domain' => env('API_DOMAIN', 'api.hellolux.com'),
'admin_domain' => env('ADMIN_DOMAIN', 'admin.hellolux.com'),
Copier après la connexion

à config/app.php Ajoutez

API_DOMAIN=api.hellolux.com
ADMIN_DOMAIN=admin.hellolux.com
Copier après la connexion
<. 🎜> vers .env. Dans le répertoire routes, ajoutez les fichiers api. .php et admin.php

# api.php
use Illuminate\Http\Request;

Route::get(&#39;/&#39;, "IndexController@index");



# admin.php
use Illuminate\Http\Request;

Route::get(&#39;/&#39;, "IndexController@index");
Copier après la connexion

Ajoutez le nom de domaine dans /etc/hosts

# Local_Manage
127.0.0.1   api.hellolux.com
127.0.0.1   admin.hellolux.com
Copier après la connexion

Décommentez les vhosts dans /etc/apache2. /http.conf

Include /private/etc/apache2/extra/httpd-vhosts.conf
Copier après la connexion

Dans /etc/apache2/extra/httpd-vhosts.conf, ajoutez

<VirtualHost *:80>
    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
</VirtualHost>
Copier après la connexion

Redémarrer Apache

sudo apachevtl restart
Copier après la connexion
Complet

Ouvrir admin.hellolux.com et api dans le navigateur .hellolux.com afficheront respectivement des pages spécifiques.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal