實驗思路:首先lnmp是基於fastCGI的方式搭建的,用戶訪問網站靜態頁面nginx解析,動態頁面轉發給php程序解析,程序數據存放在數據庫中。所以首先要在nginx配置文件中支持php程序轉發功能,把nginx程序的運行者更改爲nobody縮小權限,然後把小米程序的所有者更改爲nobody,防止***劫持,最後記得在php的配置文件中把程序的運行者更改爲nobody,默認的是Apache運行,否則php無法對小米程序進行解析。
第一步:準備安裝包
yum install mariadb-server nginx php-mysql php-fpm
第二步:解壓官方小米安裝包
unzip -d /data/web/ xiaomi.zip
第三步:下載小米商城源碼, 解壓縮到/data/web目錄, 修改權限爲nobody
cd /data/web/
chown nobody.nobody . -R --更改爲nginx可以管理的nobody用戶
第四步:修改nginx配置文件 --運行者改爲nobody,不要是root或者是nginx,避免被***攔截
注意的地方:需要把主站點頁面加上index.php
第五步:修改php配置文件/etc/php-fpm.d/www.conf
更改php-fpm的程序的運行者是nobody,我們設置的小米的程序的運行者是nobody,所以php解析的程序也必須是nobody,不然無法訪問
第六步:修改php的功能性配置php.ini
修改時鐘配置 date.timezone = Asia/Shanghai
短標籤設置short_open_tag = On
第七步: vim config.php 配置數據庫或者通過自帶的ebak訪問也是一樣的
第八步:查看日誌運行狀況,分析數據。
可以看出上面出現了一個小錯誤,這個時候我們查看錯誤日誌,看一下提示是什麼錯誤。
由上圖可以看出是權限拒絕,可以用nginx -V 查看一下nginx默認安裝的參數,裏面有一些默認路徑
改正方法如下:
測試頁面
第九步:測壓
ab -c 200 -n 1000 http://xiaomi.magedu.com/ ---測試程序最多承壓多大
dstat -tlcnmd ---檢測系統資源耗費情況
第十步:設置狀態頁面和狀態頁面加密驗證
cd /etc/nginx/
htpasswd -c htpasswd nginx
切記:連接數據庫首先要安裝模塊,其次要對程序有權限,比如修改配置文config.php.