Debian10 LAMP環境建置(Linux,Apache,MySQL, PHP)

LAMP 環境是指,由一組開源軟體安裝建置,字母代表的意思如下
L:Linux
A:Apache
M:MySQL或MariaDB
P :PHP

Apache 是最常用的WEB服務軟體,而 MySQL是比較小型的數據庫軟體,安裝在Linux,組成一個環境來運行 php,用來管理網站或是Web應用程式。

這邊使用Debian 10來作安裝範例

如果您尚未安裝Debian 10 可以參考以以下安裝範例

Debian 10(Buster)安裝

Step1 安裝Apache和設置防火牆

更新系統並使用APT管理器安裝apache

sudo apt update -y
sudo apt install apache2 -y
LAMP

如果您的主機提示沒有sudo指令
輸入下列命令安裝sudo

apt install sudo -y

開啟UFW防火牆,允許HTTP和HTTPS通過,如沒有安裝防火牆,則略過此步驟

查看ufw應用程式列表

sudo ufw app list
3 5

網下來可以看到WWW設定文件,是用來管理網路伺服器的端口

4 2

檢查WWW文件完整資訊,顯示出啟用了80跟443端口

sudo ufw app info "WWW Full"
5 3

在UFW上允許此文件,開通HTTP跟HTTPS

sudo ufw allow in "WWW Full"
6 3

在瀏覽器輸入IP,檢驗Apacha是否運作

http://your_server_ip

7 3

Step2 安裝 MariaDB

現在網頁伺服器已運作,接下來需要安裝資料庫,用來儲存與管理數據。

使用Debian的apt管理器安裝MariaDB

sudo apt install mariadb-server -y
8 3

進行安全性的設定

sudo mysql_secure_installation
9 3

預設是未設置密碼,這邊不用輸入密碼按下Enter

10 2

是否設定root帳號密碼:Y or Enter

11 1

是否移除匿名帳號:Y or Enter

12 2

限制root帳戶為本地連線:Y or Enter

13 2

刪除測試資料庫:Y or Enter

14 1

重新載入設定

15 1

完成後,輸入以下命令登錄MariaDB控制台

sudo mariadb
16 3

為了提高安全性,我們建立一個名稱為example_database的資料庫,並設置較少的權限,跟一個名稱為example_user的用戶,你可以更改這些名稱來使用。

CREATE DATABASE example_database;
17 2

建立一個新用戶,並賦予上述新建的資料庫所有權限
“password”可更改為自訂的密碼

GRANT ALL ON example_database.* TO 'example_user'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
18 2

更新資料庫權限

FLUSH PRIVILEGES;
19 2

離開控制台
exit

登入測試剛建立的使用者帳號

mariadb -u example_user -p
20 2

接著輸入密碼

20 3

顯示資料庫

SHOW DATABASES;
21 1

離開控制台
exit

Step3 安裝PHP

使用apt管理器安裝PHP及PHP模組

sudo apt install php libapache2-mod-php php-mysql -y
22 1

修改Apache文件,讓web server優先使用php文件

sudo nano /etc/apache2/mods-enabled/dir.conf

編輯內容 把index.php 移至DirectoryIndex 後的第一個位置

23 1
24 1

重新載入Apache的配置

sudo systemctl reload apache2
25 1

檢查apache2的狀態,正常為Active(runnig),如果沒有正常啟動,檢查前面的步驟是否弄錯了

sudo systemctl status apache2
26 1

Step4 測試PHP網頁

建立一個簡單的PHP腳本來確認Apache能夠處理PHP的請求

nano /var/www/html/info.php
27 1

編輯並輸入下列PHP代碼,儲存後離開

<?php
phpinfo();
28 1

接著測試建立好的web server是否正常運作PHP script

http://your_server_IP_address/info.php

29 1

出現此頁面後,表示PHP正常工作,此頁面提供一些有關伺服器的資訊,
為了避免將此資訊內容讓其他用戶看見,輸入以下指令刪除它,
如果之後您需要在檢視此頁面,可以依照上述步驟再建立檢視

sudo rm /var/www/html/info.php
30 1

現在您已經完成 LAMP 環境建置,您將可以使用來運作您的網站或應用程式

參考
https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mariadb-php-lamp-stack-on-debian-10