一、名詞解釋:
LNMP:
L : 代表 Linux 操作系統,為網站提供了可靠的運行環境 |
N : 代表 Nginx,它是一款輕量級的高性能 Web 服務器,能夠快速處理大量并? ? ? ? 發連接,有效提升網站的訪問速度和性能 |
M :?代表 MySQL 數據庫,用于存儲網站的各種數據 |
P :?代表 PHP,是一種應用于 Web 開發的腳本語言,能夠與 Nginx 服務器和? ? ? ? ? MySQL 數據庫緊密結合,實現動態網頁的生成、數據的交互和處理等功能 |
二、實驗
1.首先我們準備一臺 linux 主機,版本最好為 9 版本;如果主機不是初始狀態建議恢復快照至初始狀態
2.關閉 linux 主機防火墻以及 selinux
[root@server~]# systemctl stop firewalld
[root@server~]# setenforce 0
3.掛載磁盤操作
[root@server~]# mount /dev/sr0 /mnt
4.編寫 yum 源配置文件
[root@server ~]# vim /etc/yum.repos.d/base.repo
[BaseOS]
name=BaseOS
baseurl=file:///mnt/BaseOS
gpgcheck=0
[AppStream]
name=AppStream
baseurl=file:///mnt/AppStream
gpgcheck=0
5.通過 dnf 安裝 Web 程序
[root@server ~]# dnf install nginx -y
6. nginx 的默認網站路徑, 為了實驗能夠配置多個網站,建議放在不同的路徑
[root@server ~]# vim /etc/nginx/nginx.conf
7.將博客網站放置自定義路徑并根據配置文件創建資源文件(/www)
[root@server ~]# vim /etc/nginx/conf.d/luntan.conf # luntan.conf為自定義文件
[root@server ~]# mkdir /www
8.將路徑切換到 /www 下利用 xftp 傳輸工具將 Windows 文件傳輸到 linux 主機并查看文件是否傳輸成功
[root@server ~]# cd /www
[root@server www]#
[root@server www]# ll
9.解壓文件并查看解壓出的文件信息
[root@server www]# unzip Discuz_X3.5_SC_UTF8_20230520.zip
[root@server www]# ll
10.切換到 upload 目錄中會發現 index.php文件(Web 服務器會自動尋找并執行該目錄下的默認文件),接著我們自定義 php 界面配置解析
[root@server ~]# cd /www/upload
[root@server upload]# vim /etc/nginx/conf.d/luntan.conf
server {listen 80; # 監聽 80 端口,接收 HTTP 請求server_name 192.168.96.142; # 服務器域名或 IP,用于匹配請求的目標地址root /www; # 網站根目錄,請求的文件將從這個目錄查找# 靜態文件緩存配置location ~* \.(jpg|jpeg|png|gif|css|js)$ {#~* 匹配不區分大小寫(表示不區分大小寫的正則匹配,匹配這些擴展名的文件)expires 30d; # 設置緩存時間(# 設置瀏覽器緩存時間為 30 天,減少重復請求)access_log off; # 關閉這些文件的訪問日志,減少 IO 開銷} # 文件上傳路徑配置 location /upload/ {fastcgi_pass unix:/run/php-fpm/www.sock; # 通過 Unix Socket 連接 PHP-FPMfastcgi_index index.php; # 默認執行文件fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # 設置腳本路徑include fastcgi_params; # 包含其他 FastCGI 參數}
}
11.解析 php 代碼需要下載 php 程序,下載程序之前先進行磁盤掛載操作
[root@server upload]# mount /dev/sr0 /mnt
[root@server upload]# dnf install php* -y
12.另外我們需要注意的是在?luntan.conf 的文件中路徑問題
13.重啟服務程序測試代碼的正確性
[root@server www]# systemctl restart nginx
14.安裝 mariadb-server 程序并啟動
[root@server upload]# dnf install mariadb-server -y
[root@server upload]# systemctl restart mariadb
15.執行?mysql_secure_installation ,是 MySQL 數據庫提供的一個安全配置腳本,用于設置和強化 MySQL 服務器的安全性,設置完數據庫的密碼后進入數據庫
[root@server ~]# mysql_secure_installation
[root@server ~]# mysql -uroot -p
16.進入到瀏覽器中輸入配置服務器的 IP 地址(192.168.96.132/upload/)
①?點擊同意進入下一步
② 如果顯示當前版本較老不必理會,直接點擊取消
③ 這里會發現我們的目錄文件權限有問題(除去前兩個目錄文件顯示不存在,其余為不可寫),需要到程序端更改文件及目錄權限以及創建不存在的文件目錄
[root@server www~]# chmod 777 ./upload/{config,data,uc_*} -R # 加R表示向下遞歸,該路徑以及路徑下所有文件權限都更改
④ 更改完權限后刷新網頁即可點擊下一步繼續
⑤ 默認即可,點擊下一步
⑥ 填寫數據庫信息只用填寫數據庫名以及數據庫密碼;
填寫管理員信息填寫密碼即可
⑦ 安裝完成后點擊直接訪問站點進入論壇
⑧ 右上角登錄一下即可擁有自己的論壇!
注意:更改完權限以及配置后注意將 nginx,mariadb,php-fpm 服務重啟