[指南] 給初心者在 AWS EC2 Linux 主機安裝 Laravel 的排解指南

本篇是基礎近乎為 0 的新手的摸索過程。當在 Amazon Web Service (AWS) 上找到 Amazon Linux 2 上安裝 LAMP Web 伺服器 的教學文章,並照表操作後,照理說應該可以直接在上頭安裝 Laravel 才對。不過事情往往會比想像中複雜許多。以下便記載曾經撞牆的地方,並記錄下解決方法。
amazon aws ec2 logo


常見 Q&A

為何 EC2 主機無法正常連線了?方才明明還可以的…

有可能是你在操作過程中,反覆透過 SSH 登入太多次或是頻繁寫入讀取,導致伺服器端直接封鎖。你可以透過 Stop Instance 再重新啟動來解決。不過請先綁定好 Elastic IP,否則你的對外 IP 位置會改變。


安裝 Laravel 專案時出現 mmap() failed: [12] Cannot allocate memory

由於 php-fpm 有預設 128 MB的單條指令上限,較為妥善的解決方式是建立 swap 檔案。


composer 或是 laravel 指令無法於全域環境使用

路徑設定問題,先輸入 echo $PATH 看一下目前有的路徑。如果沒有的話,使用 pwd 來查看路徑,並設置於 $PATH 中。你可能還會需要知道如何使用 vim 編輯器。

Laravel:require…./vendor/autoload.php 錯誤的解決方法

有一些核心程式沒有下載下來的緣故,可能是因為套件彼此的建議版本問題所導致。可以在專案根目錄使用 composer install 或是 composer update 來解決。如果還是不行,可以使用 composer install –ignore-platform-reqs 來忽略 php 的版本問題。


讀取權限 Permission Denied 問題

因為在執行過程(如 php artisan key:generate )中,會產生不少的關聯檔。根據錯誤出現的地方,使用 chmod -R 777 <檔案資料夾位置> 來解決


參考資料

  1. PHP 動態網站系統開發與 Laravel 框架運用
  2. Amazon Linux 2 上安裝 LAMP Web 伺服器
  3. Solving out of memory errors with PHP and Composer on EC2s free tier
  4. Installing Laravel Framework on Ubuntu 16.04 using AWS EC2
  5. Laravel:require…./vendor/autoload.php错误的解决办法
  6. Day 04 : 環境架設 part III — Composer & Laravel
按讚加入粉絲團

延伸閱讀