在上一篇博客中,我們已經搭建好了lnmp環境,下面我們開始搭建論壇。
一、 lnmp架構的整個訪問過程
- 用戶從前端頁面開始訪問
- 先到達nginx,由nginx判斷是靜態資源還是動態頁面請求
- 如果是靜態資源,nginx直接給客戶
- 如果是動態頁面,nginx會通過fastcgi去找php,與數據有關還會與mysql交互
nginx與mysql間的關係是通過套節字關聯起來的:
用戶通過訪問php(套節字文件)動態頁面
向nginx(套節字文件)服務器
發送請求,nginx服務器發現是動態資源,就會去加載數據庫,然後向後臺的數據庫寫入數據。
二、搭建論壇
實驗環境
主機(版本:ip) | 功用 |
---|---|
虛擬機server1(rhel6.5:172.25.2.1) | lnmp環境主機 |
真機(rhel7.3:172.25.2.250) | 測試機 |
1、先從真機下載搭建論壇的包(開發人員提前寫好的)
2、解壓 Discuz_X3.2_SC_UTF8.zip
unzip Discuz_X3.2_SC_UTF8.zip -d /usr/local/lnmp/nginx/html/
#-d:指定解壓到某目錄
#沒有unzip命令的話需要安裝:yum install -y unzip
3、更改論壇包解壓後的目錄upload
名爲bbs
,這一步其實可有可無啦。
4、瀏覽器訪問:http://172.25.2.1/bbs
,開始安裝論壇。
我們發現,出現了很多紅叉,這是因爲目錄權限的問題,哪些報錯,更改哪些權限即可。
cd /usr/local/lnmp/nginx/html/bbs
chmod 777 config/ -R
chmod 777 data/ -R
chmod 777 uc_server/ uc_client/ -R
更改目錄權限爲滿權限。
此時,刷新頁面,就沒有叉叉了。
下一步,選擇 全新安裝
填寫數據庫名(任意) 數據庫用戶名:root 數據庫密碼:自己設定的數據庫root用戶密碼
管理員帳號:admin 密碼自己設定
此時,報錯數據庫連接錯誤:No such file or directory,這是因爲我們還未將php與數據庫聯繫起來。
修改php主配置文件/usr/local/lnmp/php/etc/php.ini
,
vim /usr/local/lnmp/php/etc/php.ini
修改以下配置:
1013 pdo_mysql.default_socket= /usr/local/lnmp/mysql/data/mysql.sock
1162 mysql.default_socket = /usr/local/lnmp/mysql/data/mysql.sock
1221 mysqli.default_socket = /usr/local/lnmp/mysql/data/mysql.sock
#以上路徑爲mysql安裝的目錄,根據自己mysql安裝路徑填寫
/etc/init.d/php-fpm reload
# 重新加載php
再次刷新頁面,還是報錯:Permission denied
這是因爲,nginx用戶 對於 /usr/local/lnmp/mysql/data
目錄沒有權限,更改目錄權限爲:755
chmod 755 /usr/local/lnmp/mysql/data/
再次刷新,成功安裝。
5、安裝成功後,我們先登錄管理員身份
點擊管理中心,發現報錯:Please delete install/index.php via FTP!
再刷新頁面,成功。
6、現在,論壇就已經完全搭建好了,我們可以創建一個用戶
在頁面上創建一個用戶,會寫到數據庫ranran裏,我們可以登錄數據庫進行查看
可以看出,客戶端註冊的用戶信息通過nginx和php將數據寫入了mysql數據庫當中。
到此,一個簡單可用的論壇就已經搭建完成啦。