2019年9月16日 星期一

Lumen 微框架建立筆記


依官方文件操作

根據 lumen 的官方文件說明,先決條件是
  • PHP >= 7.1.3
  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Mbstring PHP Extension
當然 composer 也是要先安裝好的,接著開啟 命令提示窗 執行
  • composer global require "laravel/lumen-installer"

一般在windows安裝 composer 都會被預設在
  • C:\Users\xxxx\AppData\Roaming\Composer\vendor\bin
   xxxx:表示使用者名稱

到這裡表示可以使用 lumen 當作指令來建立一個新的 lumen 專案,再依文件走,執行
  • lumen new blog (名稱隨自己喜歡來取)
建立完畢後,先把 .env.example 複製一份,改名為 .env 為後續先做好準備



====== 以上看起都是沒有問題的,只是我遇到的問題如下 ======

本機操作


再來我把我準備好的 docker 給啟起來,對應好剛剛建立完成的專案,確保 docker 有正常運行,把在 C 槽的 vendor 給 copy 到新建立的專案( Laravel 5.1 時,我是這麼做的)

這時候依照 docker 設定的 port 號打上網址列,是不會正常運作剛剛建立好專案,這不是專案有錯,也不是 docker 有問題

當我想要執行 php artisan key:generate 馬上就出錯了,很像是 lumen 沒有這個方法可以使用,循著錯誤找,一直沒有具體的解法,大部份都是說


  • composer update
  • composer --no-script install
  • composer dump-autoload


照著去做的時候,就發現,我的 dockerfile 跟 php.ini 沒有加到 mbstring、openssl、phpunit 等等的錯誤,後來,找到好心人解說,要把


  • vendor、composer.json 都刪掉,再重做 composer install


但我還是出錯,就是 composer 的提示,說有些問題要處理,只好去找一個完整的 dockerfile 內容來重建我的 docker 環境,終於被我找到可用又夠完整的 dockerfile,重建 docker 後,再執行 composer install 就成功了,當然,在 .env 的 app_key,這是要補上的,所以就用了


$router->get('/key', function () {
     return str_random(32);
});
這個方式來取得亂數,補上 app_key,就可正常運作

沒有留言:

張貼留言

Lumen 微框架建立筆記

依官方文件操作 根據 lumen 的官方文件說明,先決條件是 PHP >= 7.1.3 OpenSSL PHP Extension PDO PHP Extension Mbstring PHP Extension 當然 composer 也是...