測試環境
- centOS 7
- Nginx 1.12.2
- MariaDB 10.3
- PHP 7.3
(A)Linux 安裝與前期準備
1.安裝作業系統CentOS 7
2.安裝完成後先更新系統
sudo yum update -y
3.安裝 Epel 套件
sudo yum install -y epel-release yum-utils
(B) Nginx 安裝
1.安裝Nginx
sudo yum install -y nginx
2.啟動Nginx服務:
sudo systemctl start nginx
3.設定開機時啟動Nginx
sudo systemctl enable nginx
4.確認 Nginx 服務的狀態:
sudo systemctl status nginx
輸出內容應該像是
(C)PHP
1.安裝 Remi 儲存庫
sudo yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm
2.啟用 PHP 7.3
sudo yum-config-manager --enable remi-php73
3.安裝 PHP 及常見 PHP 模組
sudo yum install -y php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd
4.驗證PHP安裝及確認版本
php -v
輸出內容如下
5.安裝 PHP-FPM
Nginx 沒有內置支持處理PHP文件須先安裝套件
sudo yum install -y php-fpm
6.編輯 PHP 設定檔
預設PHP FPM為 apache 上使用,修改內容變更為與nginx套接。
請編輯下方黃色行
預設路徑:
/etc/php-fpm.d/www.conf
檔案內容:
…
user = nginx
…
group = nginx
…
listen = /run/php-fpm/www.sock
…
listen.owner = nginx
listen.group = nginx
7.確認 /var/lib/php 目錄正確所有權
sudo chown -R root:nginx /var/lib/php
8.開機請啟動 php-fpm
sudo systemctl enable php-fpm
9.啟動 php-fpm
sudo systemctl start php-fpm
10.確認服務狀態
systemctl status php-fpm.service
輸出應該如下
11.編輯Nginx設定添加以下程式碼
添加下方程式碼,Nginx可以處理PHP文件
預設路徑
/etc/nginx/nginx.conf
檔案內容
server {
# . . . 其他程式碼
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
12.重啟nginx,載入設定
sudo systemctl restart nginx
(D)MariaDB
1.生成儲存庫碼
先至 Maria DB 存儲庫頁面 為特定版本生成儲存庫下列以10.3版本作為示範
2.啟用MariaDB存儲庫。
創建一個名為的存儲庫文件MariaDB.repo並添加以下內容:
檔案位置
/etc/yum.repos.d/MariaDB.repo
檔案內容
# MariaDB 10.3 CentOS repository list - created 2019-01-03 10:01 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.3/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
3.安裝 MariaDB 服務器 及 客戶端
透過 yum 方式安裝 MariaDB 服務器 及 客戶端
sudo yum install -y MariaDB-server MariaDB-client
4.設定開機啟動 MariaDB
sudo systemctl enable mariadb
5.啟動 MariaDB
sudo systemctl start mariadb
6.檢查 MariaDB 狀態
sudo systemctl status mariadb
輸出應該如下
正式環境請參考執行”mysql_secure_installation“