建構 POC 網站,網站內容是 POC 建置過程
在確認專案構想是否可行時,通常會先製作專案的雛形做概念驗證或先期評估,這個雛形一般稱做「proof of concept」,簡稱 POC。
我的第一個 POC 網站《ffxitoolbox》是驗證自己是否能利用學習 Laravel 所累積的知識,將之前用純 PHP 語法與 MySQL 資料庫建置的 ffxi 合成配方網站以 Laravel 重置;《從零開始的 Laravel 部落格建置日誌》(larablog)則是驗證自己是否能用 Laravel 做出自己覺得好用,可以作為部落格系統的第二個 POC 網站。
我是利用工作以外的時間製作 larablog,整體架構花了近三個星期,之後一邊整理建置流程寫成網站文章一邊微調專案呈現,用了近五個星期。
回歸初心
唸書的時候接觸到網際網路,對網頁製作產生濃厚的興趣,購買書籍自學後用 HTML 語法做了自己的部落格。當兵回來之後買了 PHP 書籍想將部落格用程式語言改版成動態網站,結果因為大大小小事情而中斷學習。
之後接觸 LifeType、Joomla!、WordPress 等運用 PHP 及 MySQL 建置的內容管理方案,到現在以 Laravel 建構 larablog...雖然有點晚,不過我還是完成了二十二年前沒完成的心願。
個人履歷
這個網站除了記載專案建置過程外,「關於我」頁面是個人網路履歷,如果正在看這邊文章的你或認識的朋友正在尋找 PHP 後端工程師,還請利用頁面中的聯絡表單或是將這個網站介紹給朋友,謝謝。
建構日誌各篇標題
- 序
- 規格書
- 建立專案與基礎設定
- 專案資料表
- Voyager 的 BREAD
- 在 Voyager 新增編輯器
- 畫面切版
- 文章與 Controller
- 依條件顯示文章
- 用 Voyager 建立網站選單及作者簡介
- 回應與通知信
- UX 改進其之一
- UX 改進其之二
- 站內搜尋
- 專案上線
- 你好 larablog ←現在在這裡
如果對這個系統有興趣,請參考下面的安裝流程將專案複製下來試用看看。如果能成為你在網路發表文章的工具,那會是我的榮幸及最大的鼓勵。
安裝流程
以下作業如無說明均是在終端機畫面進行:
- 輸入
glt clone https://github.com/abokuo/larablog.git
下載專案。 - 切換至專案根目錄,輸入
composer install
安裝專案相依套件。 - 將
.env.example
複製或更名為.env
。 - 輸入
php artisan key:generate
建立新金鑰。 - 為專案建立資料庫資源,並在
.env
中輸入資料庫主機名、資料庫名稱、資料庫連線帳號及資料庫連線密碼。
DB_CONNECTION=mysql
DB_HOST=(資料庫主機名)
DB_PORT=3306
DB_DATABASE=(資料庫名稱)
DB_USERNAME=(資料庫連線帳號)
DB_PASSWORD=(資料庫連線密碼)
- 在
.env
中輸入外部服務的連線資料:帳號、密碼、金鑰等。
MAIL_MAILER=smtp
MAIL_HOST=(SMTP 主機名)
MAIL_PORT=(連線埠號)
MAIL_USERNAME=(SMTP 主機連線帳號)
MAIL_PASSWORD=(SMTP 主機連線密碼)
MAIL_ENCRYPTION=(通訊協定:ssl 或 tls)
MAIL_FROM_ADDRESS=(發信人電子郵件信箱)
MAIL_FROM_NAME="${APP_NAME}"
HCAPTCHA_SECRET=(hCAPTCHA 私密金鑰)
HCAPTCHA_SITEKEY=(hCAPTCHA 連線金鑰)
SCOUT_PREFIX=(索引名)
SCOUT_QUEUE=true
SCOUT_IDENTIFY=true
ALGOLIA_APP_ID=(Algolia APP ID)
ALGOLIA_SECRET=(Algolia Admin API Key)
- 執行
php aritsan migrate
建立專案資料表。 - 輸入
php artisan voyager:install
安裝 Voyager。 - 輸入
php artisan voyager:admin (管理員信箱) --create
建立管理者帳號(email 帳號),依照畫面指示輸入資料後可從/admin
登入 Voyager。