Heim  >  Artikel  >  PHP-Framework  >  So erstellen Sie mehrere Websites lokal in Laravel

So erstellen Sie mehrere Websites lokal in Laravel

藏色散人
藏色散人nach vorne
2020-11-30 14:35:004692Durchsuche

Die folgende Tutorial-Kolumne von Laravel Framework stellt Ihnen vor, wie Sie mit Laravel mehrere Websites lokal erstellen. Ich hoffe, dass es für Freunde hilfreich ist, die es benötigen!

So erstellen Sie mehrere Websites lokal in Laravel

Vorwort

Ich habe in letzter Zeit viele Ideen, ich möchte dies und das tun, aber ich bin auf ein sehr unangenehmes Problem gestoßen:

  1. Ich habe nicht alles geklärt Dinge, die ich in der Vergangenheit getan habe.
  2. Es gibt keinen einheitlichen Verwaltungsplan für diese Codes.

Für mich ist es im Moment das Wichtigste, den Code zu sortieren Zuerst entwickle ich eine Reihe meiner eigenen lokalisierten Verwaltungstools.

Dieses Tool soll derzeit vorläufig für Laravel entwickelt werden. Es verwendet eine Front-End- und Back-End-Trennstrategie, sodass mehrere Terminals über entsprechende APIs verfügen können in der Zukunft.

Und ich mag es nicht besonders, mehrere weitere Laravel-Namen zu öffnen, daher ist es zu einem der Hauptprobleme geworden, mehrere Domainnamen in ein Laravel-Framework aufzunehmen.

Heute werde ich es sorgfältig aufzeichnen Verwenden Sie Laravel, um mehrere Domänennamen in der Lokalisierung einzurichten. Tatsächlich ist der Plan

für die Aufteilung in zwei Domänennamen

vorgesehen Domänenname, für den ich mich entschieden habe:

api.hellolux.com

Der andere ist der Backend-Verwaltungsdomänenname, für den ich mich entschieden habe. Implementiert für:

admin.hellolux.com

Fügen Sie einen neuen Ordner hinzu Controller-Ebene

Fügen Sie im Verzeichnis appHttpControllers zwei neue Ordner hinzu, nämlich Api und Admin.

Ändern Sie die Datei RouteServiceProvider.php

Ändern Sie in appProvidersRouteServiceProvider.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');
    });
}

Hinzufügen

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

in config/app.php Fügen Sie

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

in .env Fügen Sie

# api.php
use Illuminate\Http\Request;

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



# admin.php
use Illuminate\Http\Request;

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

hinzu. Fügen Sie im Routenverzeichnis zwei Dateien api.php und admin.php hinzu
# Local_Manage
127.0.0.1   api.hellolux.com
127.0.0.1   admin.hellolux.com

Fügen Sie in /etc/apache2/extra/httpd-vhosts.conf

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

Apache neu starten

<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>

Complete

Öffnen Sie admin.hellolux.com und api.hellolux.com im Browser und die spezifischen Seiten werden angezeigt bzw.

Das obige ist der detaillierte Inhalt vonSo erstellen Sie mehrere Websites lokal in Laravel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen