Laravel
Laravel5.2でvender(コアファイル)を分離する
ヤス
更新日:2021/08/10
Laravelは機能が多すぎて把握しきれないです。
フレームワークの基幹部分(コアファイル)を共有したい
Laravel5.2を複数のシステムで利用したかったので、基幹部分(コアファイル)を別の場所に移動して共有するようにしました。
Laravel5.2内のvenderディレクトリを、別の場所(share)に移動し、複数のシステム(sanmpleA、sanmpleB)で共有する場合の設定例です。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
. ├── share │ └── vender │ ├── sanmpleA │ ├── app │ ... │ └── storage │ └── sanmpleB ├── app ... └── storage |
手順1:bootstrap/autoload.phpを編集
編集対象:各システム内のbootstrap/autoload.php
編集内容
1 2 3 4 5 6 |
//コメントアウト //require __DIR__.'/../vendor/autoload.php'; //追記 define('SYSTEM_DIR', dirname(dirname(__FILE__))); require __DIR__.'/../../share/vendor/autoload.php'; |
手順2:share/vender/composer/内のPHPファイルを編集
編集対象:share/vender/composer/ディレクトリ内の下記のファイル
1 2 3 4 |
autoload_classmap.php autoload_files.php autoload_namespaces.php autoload_psr4.php |
編集内容
1 2 3 4 5 |
//コメントアウト // $baseDir = dirname($vendorDir); //追記 $baseDir = SYSTEM_DIR; |