2

私は、Laravel 5.3がプロジェクトあたり平均約41MBのディスク容量を必要とすることに気付きました。複数のプロジェクトで1つのLaravel PHPをインストールするにはどうすればよいですか?

LaravelがPHPサーバ(Laravel専用のもの)に一度インストールされ、複数のプロジェクト(別々のドメインとして、一部はサブディレクトリとして)が同じものを使用するように設定する手間が省けますか?ララベルのインスタンス?

たとえば、私は/ usr/share/laravelを持ってそこにすべてを置くことができますが、/ var/wwwには自分のドメイン(/var/www/test1.com、/ var /www/test2.com)とドメインのサブフォルダ(/var/www/test1.com/project2)を使用し、すべて同じ/ usr/share/laravelを使用します。

+0

IMHOこれは本当に有益なことではなく、ある時点で問題を抱えていることもあります。あなたの惑星で1MBのHDDスペースが足と腎臓にかかる場合を除いて、あなたは獲得する以上に無駄になります。 –

答えて

2

シンボリックリンクを使用することはできませんが、これは試したことがありませんが、アプリケーションごとに別々のディレクトリを作成し、共有ベンダーディレクトリ(Laravelを含む)へのシンボリックリンクを作成する必要があります。

これにより、すべてのアプリケーション固有のファイルを個別にバージョン管理できますが、依存関係は共有できます。あなたのcomposer.jsonファイルのバージョンが異なる場合は、問題が発生する可能性があります。

0

私が最後に試したときの解決策は少し違っていました。どんな手段であれ、私はそれが良いものか、あるいは最高のものだと思う。それは、これまで取り組んできました。後は

public function map(Router $router) 
{ 
     if (strstr(Request::getHost(), 'domain_one')) { 
      $router->group([ 
       'namespace' => $this->namespace, 
       'middleware' => ['default_middle_wares'], 
      ], function ($router) { 
       require app_path('Http/Routes/domain_one.php'); 
      }); 
     } 

     if (strstr(Request::getHost(), 'domain_two')) { 
      $router->group([ 
       'namespace' => $this->namespace, 
       'middleware' => ['default_middle_wares'], 
      ], function ($router) { 
       require app_path('Http/Routes/domain_two.php'); 
      }); 
     } 
} 

  • まず、すべてのドメインは
  • カスタマイズルートサービスプロバイダ

だから、最初の変化RouteServiceProviderに同じlaravelプロジェクトをロードしますルートファイルを作成します。

関連する問題