前提:在阿里云服務器ECS進行部署
配置信息:
- CPU: 1核
- 內存: 1 GiB
- 網絡類型:專有網絡VPC
- IP地址:公網IP
操作流程(此流程參照阿里云官網的操作手冊)
使用云服務器ECS手動搭建LNMP平臺的操作流程如下:
-
# 以下步驟為真實操作
步驟一:檢查防火墻狀態
1、運行getenforce命令查看SELinux的當前狀態。
getenforce
Disabled
2、
如果SELinux狀態參數是Disabled, 則SELinux為關閉狀態。
如果SELinux狀態參數是Enforcing,則SELinux為開啟狀態。
步驟二:安裝Nginx
1、運行以下命令安裝Nginx
yum -y install nginx
2、查看Nginx版本
nginx -v
顯示以下結果,表示Nginx安裝成功。
nginx version: nginx/1.16.1
步驟三:安裝MySQL
1、運行以下命令更新YUM源
rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
2、運行以下命令安裝MySQL
yum -y install mysql-community-server
3、查看MySQL版本號
mysql -V
返回如下結果,表示MySQL安裝成功。
mysql Ver 14.14 Distrib 5.7.28, for Linux (x86_64) using EditLine wrapper
步驟四:安裝PHP
1、安裝時我碰到了此問題
從報錯信息可以看出是ius.repo出了問題
2、于是我進行了下面的操作
cd /etc/yum.repos.d
vi ius.repo
把baseurl這一行前面的#全部去掉
3、下面開始安裝PHP
1)更新YUM源
php高版本的yum源地址,有兩部分,其中一部分是epel-release,另外一部分來自webtatic。如果跳過epel-release的話,安裝webtatic的時候,會報錯,所以要安裝兩部分。
yum install epel-release -y
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
2)安裝擴展包(根據個人需要選擇,目前個人先嘗試簡單版本)
- 普通版:
yum -y install php72w php72w-cli php72w-fpm php72w-common php72w-devel
- 豪華版:
yum -y install php72w php72w-cli php72w-fpm php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xm
3)查看安裝是否成功
php -v
PHP 7.2.27 (cli) (built: Jan 26 2020 15:49:49) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
步驟五:配置Nginx
1、備份Nginx配置文件
cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
2、修改Nginx配置文件,添加Nginx對PHP的支持
1)打開Nginx配置文件
vim /etc/nginx/nginx.conf
2)添加配置信息
按i進入編輯模式,在server大括號內,添加下列配置信息
location / {
index index.php index.html index.htm;
}
location ~ .php$ {`
root /usr/share/nginx/html; #將/usr/share/nginx/html替換為您的網站根目錄,本教程使用/usr/share/nginx/html作為網站根目錄
`fastcgi_pass 127.0.0.1:9000; #Nginx通過本機的9000端口將PHP請求轉發給PHP-FPM進行處理
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params; #Nginx調用fastcgi接口處理PHP請求
}
3)添加后如下圖所示
3、啟動Nginx服務
systemctl start nginx
4、設置Nginx服務開機自啟動
systemctl enable nginx
步驟六:配置MySQL
1、啟動MySQL服務
systemctl start mysqld
2、設置MySQL服務開機自啟動
systemctl enable mysqld
3、查看/var/log/mysqld.log文件,獲取并記錄root用戶的初始密碼
grep 'temporary password' /var/log/mysqld.log
說明:下一步重置root用戶密碼時,會使用該初始密碼。
4、配置MySQL的安全性
mysql_secure_installation
安全性的配置包含以下五個方面:
1)重置root賬號密碼
2)輸入Y刪除匿名用戶賬號
3)輸入Y禁止root賬號遠程登錄
4)輸入Y刪除test庫以及對test庫的訪問權限
5)輸入Y重新加載授權表
5、最后結果如下圖所示
步驟七:配置PHP
1、新建phpinfo.php文件,用于展示phpinfo信息
vim <網站根目錄>/phpinfo.php #將<網站根目錄>替換為您配置的網站根目錄。
vim /usr/share/nginx/html/phpinfo.php
2、添加以下內容
<h1>Hello PHP, ljm</h1>
<?php
echo phpinfo();
?>
3、啟動PHP-FPM
systemctl start php-fpm
4、設置PHP-FPM開機自啟動
systemctl enable php-fpm
步驟八:測試訪問LNMP平臺
1、打開任意瀏覽器
2、在地址欄輸入http://<ECS實例公網IP地址>/phpinfo.php。
返回結果如下圖所示,表示LNMP環境部署成功
后續步驟
測試訪問LNMP平臺成功后,建議將phpinfo.php文件刪除,消除安全隱患
rm -rf <網站根目錄>/phpinfo.php #將<網站根目錄>替換為您在nginx.conf中配置的網站根目錄
rm -rf /usr/share/nginx/html/phpinfo.php