原文地址:https://www.itzgeek.com/how-tos/linux/centos-how-tos/how-to-install-linux-nginx-mariadb-php-lemp-stack-in-rhel-8.html
翻譯轉載原因:由于我的wordpress是用這套系統安裝的,方便系統炸了的時候還有個備份,
正文
-------------------------------------------------------------------------------------
Nginx的是一個開源的,高性能的網路服務器 ,它以其穩定性強,非常簡單的配置,豐富的功能集和低資源消耗而著稱,
Nginx允許您將其用作反向代理,負載平衡器,HTTP快取和郵件代理,
這篇文章向您展示如何在具有PHP支持(通過PHP-FPM)和MariaDB支持的CentOS 8 / RHEL 8上安裝Nginx ,
PHP-FPM是PHP FastCGI的替代實作,它具有其他功能,可用于任何規模的站點,尤其是繁忙的站點,
安裝NGINX
通過基礎源安裝
在RHEL 8中,Nginx在rhel-8-for-x86_64-appstream-rpms存盤庫中可用,因此,我們不需要手動設定Nginx存盤庫,
使用YUM命令安裝Nginx ,
yum -y install nginx
使用Nginx的官方源安裝Nginx(可選)
將Nginx源添加到您的系統,
### CentOS 8 ### cat << EOF > /etc/yum.repos.d/nginx.repo [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/centos/8/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key EOF ### RHEL 8 ### cat << EOF > /etc/yum.repos.d/nginx.repo [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/rhel/8/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key EOF
通過臨時禁用AppStream存盤庫從Nginx的官方存盤庫安裝Nginx ,
yum install -y nginx --disablerepo=* --enablerepo=nginx-mainline
啟動NGINX
安裝后啟動Nginx Web服務器服務,
systemctl start nginx
使用以下命令檢查狀態Nginx Web服務器服務,
systemctl status nginx
防火墻設定
如果存在防火墻,通過執行以下命令,允許Web請求通過防火墻,(centos8默認防火墻為Firewall)此示例為開放http協議的服務
firewall-cmd --permanent --add-service=http firewall-cmd --reload
SELinux設定(可選,不建議)
如果您在Nginx日志上遇到關于SELinux的任何錯誤,可以選擇關閉SELinux
否則,您可以使用以下命令暫時禁用SELinux,但是,我們建議您永久禁用SELinux,(原文如此,但是我不建議關閉SELinux,這給被黑了的作業系統提供了一道防線,一般不會遇到SELinux的問題)
setenforce 0 sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
驗證Nginx安裝
打開您的網路瀏覽器然后訪問以下網址
http://your-ip-address
從基礎源安裝的Nginx
您應該看到以下頁面歡迎使用Red Hat Enterprise Linux上的nginx,該頁面確認您Ngnix Web服務器已成功安裝在服務器上,

使用Nginx的官方源安裝的Nginx

提示:CentOS8/RHE L 8上Nginx的默認檔案根目錄是/usr/share/nginx/html/ 其他組態檔位于/etc/nginx目錄下,
在系統啟動時啟用Nginx服務,
systemctl enable nginx
安裝MariaDB
CentOS 8/RHEL 8附帶了MariaDB 10.3 使用yum命令安裝MariaDB服務器
(您也可以從MariaDB社區安裝MariaDB軟體包,在本轉載翻譯鏈接中不提供,可以參考原文鏈接:如何在CentOS 8 / RHEL 8上安裝MariaDB https://www.itzgeek.com/how-tos/linux/centos-how-tos/how-to-install-mariadb-on-rhel-8.html)
yum -y install mariadb mariadb-server
使用以下命令啟動MariaDB服務器,
systemctl start mariadb
啟用MariaDB服務以在系統引導期間自動啟動,
systemctl enable mariadb
MariaDB服務器安裝完成后,運行mysql_secure_installation命令以保護MariaDB,
(請注意,原文圖中不一定是最佳的安全設定,請根據自身情況進行安全設定,在此不展開介紹)

安裝PHP
CentOS8/RHEL8附帶了PHP7.2,通過PHP-FPM(使用YUM命令的FastCGI Process Manager)安裝PHP ,
(如果需要,可以使用Remi存盤庫安裝PHP 7.3,在本轉載翻譯鏈接中不提供,可以參考原文鏈接:如何在CentOS 8 / RHEL 8上安裝PHP 7.3 https://www.itzgeek.com/how-tos/linux/centos-how-tos/how-to-install-php-7-3-on-rhel-8.html)
yum -y install php-fpm php-mysqlnd php-cli
編輯/etc/php.ini
vi /etc/php.ini
將cgi.fix_pathinfo的值設定為0
cgi.fix_pathinfo=0
編輯/etc/php-fpm.d/www.conf檔案
vi /etc/php-fpm.d/www.conf
確保以下值未被注釋
[.More.] pm.min_spare_servers = 5 [.More.] pm.max_spare_servers = 35 [.More.]
更改監聽引數:
從
listen = /run/php-fpm/www.sock
更改為
listen = 127.0.0.1:9000
現在啟動PHP-FPM服務
systemctl start php-fpm
使PHP-FPM服務開機啟動
systemctl enable php-fpm
在Nginx上啟用PHP-FPM支持
現在,我們將在Nginx服務器上創建一個虛擬主機,用于以下詳細資訊以測驗PHP,
(域名是需要購買的,可以在本地host中修改達到ip與域名映射效果,如果想讓互聯網上的他人通過域名訪問你的網站需要購買域名,并擁有一個公共IP地址,在此不贅述)
(由于大多數情況下是沒有域名的,可以直接在nginx.conf組態檔中修改,server_name為localhost的內容,在此不贅述)
服務名稱: test.refly.cloud(請替換為自己的域名) web檔案根目錄: /usr/share/nginx/html/test.refly.cloud
在/etc/nginx/conf.d檔案夾內創建一個名為test.refly.cloud.conf檔案,并編輯它
vi /etc/nginx/conf.d/test.refly.cloud.conf
輸入如下內容
server {
server_name test.refly.cloud;
root /usr/share/nginx/html/test.refly.cloud;
location / {
index index.html index.htm index.php;
}
location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
創建web檔案目錄
mkdir /usr/share/nginx/html/test.refly.cloud
為了測驗PHP,我們創建一個index.php檔案于web檔案根目錄
echo "<?php phpinfo(); ?>" > /usr/share/nginx/html/test.refly.cloud/index.php
重新啟動服務
systemctl restart nginx systemctl restart php-fpm
測驗LEMP
在/etc/hosts(Linux)或者hosts檔案(Windows)中為您的Web服務器域(test.refly.cloud)創建映射條目,
127.0.0.1 test.refly.cloud
打開網路瀏覽器,然后在地址欄中輸入您的域名,該頁面如下所示,

從上面的螢屏截圖中,PHP可以按預期運行,并且通過FPM/FastCGI運行,如服務器API行中所示,
您可以進一步向下滾動頁面以查看MariaDB支持的詳細資訊,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/226455.html
標籤:其他
