Symbols count in article:
767
Reading time:
4 mins.
部署 app 與共享主機
主機相關
- 申請 godaddy 主機(一元主機)
- 啟用 ssh 連線並匯入金鑰
ssh -i ~/.ssh/id_rsa 帳號@ip
- Select PHP verion => 選擇 5.6 => 啟用 zip => 儲存
Composer install
- 預設就裝好了。
- 如果沒有,使用 wget 或是 curl 取得 composer
wget https://getcomposer.org/installer
curl -sS https://getcomposer.org/installer | php
- 檢查 composer 是否可用
php installer --check
- 安裝 composer
php installer
- 執行 composer
php composer.phar
laravel install
- 用 composer 下載 laravel installer
composer global require "laravel/installer"
- 新增 path 到 ~/.bash_profile
export PATH="$PATH:$HOME/.composer/vendor/bin"
- 更新檔案
source .bash_profile
- 執行
laravel
語法
上傳專案
- 直接到 cpanel 上傳檔案
設定環境檔案
- 下載相依檔案
composer update
- 複製 env 範例檔
cp .env.example .env
- 設定 .env
- 新增 APP_KEY
php artisan key:generate
發佈
- 修改 documentroot 到 public folder
- 如果主目錄路徑不同,可修改 public 目錄下的 index.php
- 修改 config/app.php 的 URL 網址、時區(Asia/Taipei)
- 將 adimin/media/index view 的 form path 改為
delete/media
- 將 routes/web.php 的 delete media route 改為
Route::get('admin/delete/media', 'AdminMediasController@deleteMedia');
- 修改 .env 將 debug 關閉且將環境改為 production
升級到 5.4
- 刪除 bootstrap/cache/compiled.php
- 修改 composer.json
"phpunit/phpunit": "~5.7",
"laravel/framework": "5.4.*",
"laravelcollective/html": "5.4.*",
"cviebrock/eloquent-sluggable": "4.2.1",
- 更新套件
composer update
- 清除快取
php artisan view:clear
- 清除路由快取
php artisan route:clear
- 刪除 gulpfile.js
- 新增 webpack.mix.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| const { mix } = require ('laravel-mix');
mix.js('resources/assets/js/app.js', 'public/js') .sass('resources/assets/sass/app.css', 'public/css');
mix.styles([
'resources/assets/css/libs/blog-post.css', 'resources/assets/css/libs/bootstrap.css', 'resources/assets/css/libs/font-awesome.css', 'resources/assets/css/libs/metisMenu.css', 'resources/assets/css/libs/sb-admin-2.css'
], 'public/css/libs.css');
mix.scripts([
'resources/assets/js/libs/jquery.js', 'resources/assets/js/libs/bootstrap.js', 'resources/assets/js/libs/metisMenu.js', 'resources/assets/js/libs/sb-admin-2.js', 'resources/assets/js/libs/scripts.js'
], './public/js/libs.js');
|
- 將 package.json 取代為
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| { "private": true, "scripts": { "dev": "node node_modules/cross-env/dist/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "watch": "node node_modules/cross-env/dist/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "watch-poll": "node node_modules/cross-env/dist/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --watch-poll --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "hot": "node node_modules/cross-env/dist/bin/cross-env.js NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js", "production": "node node_modules/cross-env/dist/bin/cross-env.js NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js" }, "devDependencies": { "axios": "^0.15.3", "bootstrap-sass": "^3.3.7", "jquery": "^3.1.1", "laravel-mix": "^0.8.1", "lodash": "^4.17.4", "vue": "^2.2.2" } }
|
- 安裝相依套件
npm install
- 執行 webpack
npm run dev
- 監控 webpack 任何變化
npm run watch
完成課程結業證書