2020年6月1日 星期一

建立及調整 Laravel 5.0 專案的目錄



使用 Laravel 建立的 project,對外公開的網址都在 public 下,但有時並不方便修改伺服器的設定,就只好想辦法將目錄做一下調整。

因為使用的伺服器是 Windows Server 2003,只能使用 PHP 5.4,因此在此以 Laravel 5.0 來做說明。

建立 project

export COMPOSER_HOME=/var/tmp/composer
composer create-project laravel/laravel laravel-50-fresh "5.0.*" --prefer-dist



調整目錄

建立目錄 web_src.axd,然後除了 vendor、public、storage 之外,把所有檔案和目錄,都搬到web_src.axd 之下。

修改 index.php、web_src.axd/composer.json、web_src.axd/artisan、web_src.axd/bootstrap/autoload.php

web_src.axd/composer.json,主要是修改 vendor 的目錄位置,方便備份

"config": {

"preferred-install": "dist",

"vendor-dir": "../vendor"

}

}


index.php 修改如下

define('VENDORDIR', __DIR__.'/vendor');

define('BASEDIR', __DIR__.'/web_src.axd');  


require BASEDIR.'/bootstrap/autoload.php';

$app = require_once BASEDIR.'/bootstrap/app.php';

$app->useStoragePath(__DIR__.'/storage');   


web_src.axd/bootstrap/autoload.php,把載入 vendor/autoload.php 那一行修改如下
require VENDORDIR.'/autoload.php';

web_src.axd/artisan  修改如下

define('VENDORDIR', __DIR__.'/../vendor');

define('BASEDIR', __DIR__.'/../web_src.axd');


require BASEDIR.'/bootstrap/autoload.php';


$app = require_once BASEDIR.'/bootstrap/app.php'; 

$app->useStoragePath(BASEDIR.'/../storage'); 


然後執行 update 
cd web_src.axd/
composer update


沒有留言:

張貼留言

網誌存檔