回顧:LAMP 是什麼?
LAMP 是 Linux + Apache + MariaDB + PHP 的縮寫,也就是這個系列要架設的核心環境:
- Linux:作業系統(這裡用 Alpine)
- Apache:Web 伺服器,接收瀏覽器請求並回應網頁
- MariaDB:資料庫,存放文章、使用者資料等
- PHP:動態網頁程式語言
前面幾篇介紹了每個角色的功能,這一篇開始實際動手安裝。
安裝 Apache
Alpine 使用 apk 作為套件管理工具:
# 更新套件清單
sudo apk update
# 安裝 Apache
sudo apk add apache2
# 啟動 Apache
sudo rc-service apache2 start
# 設定開機自動啟動
sudo rc-update add apache2
安裝完成後,在瀏覽器輸入 http://你的伺服器IP,應該會看到 Apache 的預設歡迎頁面。
安裝 MariaDB
# 安裝 MariaDB 主程式與客戶端工具
sudo apk add mariadb mariadb-client
# 初始化資料庫(第一次安裝需要執行)
sudo mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
# 啟動 MariaDB
sudo rc-service mariadb start
# 設定開機自動啟動
sudo rc-update add mariadb
完成後可以用 mysql -u root -p 登入,建立資料庫與資料表。
安裝 PHP 與 PHP-FPM
# 安裝 PHP 與常用模組
sudo apk add php php-fpm php-mysqli php-opcache
# 啟動 PHP-FPM
sudo rc-service php-fpm7 start
# 設定開機自動啟動
sudo rc-update add php-fpm7
連接 Apache 與 PHP
安裝好 PHP 與 PHP-FPM 後,還需要讓 Apache 知道「遇到 .php 檔案要交給 PHP-FPM 處理」:
# 安裝 Apache 的 PHP 模組
sudo apk add apache2-php7
# 重新啟動 Apache 套用設定
sudo rc-service apache2 restart
完成後,把 PHP 檔案(例如 index.php)放到 Apache 的網頁根目錄(通常是 /var/www/localhost/htdocs),就可以測試動態網頁是否正常運作。
小結
到這一步,LAMP 環境已經就緒:Apache 接收請求、MariaDB 存資料、PHP 產生動態內容。接下來可以開始放上你的第一個網頁檔案。