Stories

Detail Return Return

記一次 centos7 + nginx + php-fpm 部署 wordpress - Stories Detail

前置説明

斷斷續續,花了半天的時間才把這些內容都打通,特此分享給有需要的人

基礎軟件下載

nginx

對着人家官方指導搞,總不會錯的:https://nginx.org/en/linux_pa...,不多BB

php74與php-fpm

參考這篇文檔:https://shouts.dev/articles/i...
先完成下載,測試成功啓動php-fpm即可,後面再配置

wordpress

找一個合適的目錄執行下面兩行,下載並解壓到當前目錄

wget https://wordpress.org/wordpress-5.9.1.tar.gz
tar -zxvf wordpress-5.9.1.tar.gz

配置

php-fpm

image.png

  1. 配置php-fpm進程用户與用户組,這裏可以採用centos已有的nobody用户與用户組,主要是用來限制目錄權限,後面就會看到它的作用(自己也可以新建系統用户填到這裏,但是目前來説還不需要,注意 root 用户是無法填寫的
  2. php-fpm監聽消息的ip+端口,除此之外還有unix socket形式,但該種方式是本機socket,無法進行遠程通信,可自行後續嘗試
  3. 該部分即unix socket文件所屬與權限,默認是註釋的,配置了ip+端口後,該部分沒什麼作用
總而言之,注意nginx, php-fpm設置同一用户組,保證不會權限的問題

nginx

這裏主要配置將/wordpress請求打到php-fpm內處理

注意

  1. 這裏暫時不能修改"wordpress"為其他值,否則會出問題,後面安裝後還可以改
  2. root /www 中 www是你解壓wordpress的父目錄,示例中的目錄路徑為 /www/wordpress
location /wordpress {
    index     index.php;
    root      /www;
    try_files $uri $uri/ /blog/index.php?q=$uri$args;
}
location ~* /wordpress/.*\.php$ {
    # fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
    include        fastcgi_params;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  /www$fastcgi_script_name;
}

fastcgi_param SCRIPT_FILENAME /www$fastcgi_script_name;
該部分的作用需要舉個🌰:

原訪問地址:http://example.com/wordpress/index.php
轉到php-fpm內會找當前主機內的路徑為:/www/wordpress/index.php;

注意
如出現404 File not found問題:檢查對應目錄是否有對應文件,找到對應文件,開啓php-fpm的access.log,慢慢排查對應文件匹配情況

如出現403 forbidden問題:檢查從最外層目錄開始該文件是否可以訪問,可參考命令:
sudo -u nobody ls -l /www/wordpress/index.php
如不能訪問,可遞歸修改所屬,參考命令:
sudo chown -R nobody:nobody 對應目錄

啓動

可參考wordpress文件夾內的readme.html

或直接訪問路徑:/wp-admin/install.php,跟着做即可

必須要有mysql,下載可參考該篇文檔:https://tecadmin.net/install-...

完結

希望能對各位有所幫助,有問題可以留評,希望共同進步!

如果能給個點贊那就更好了。Thanks♪(・ω・)ノ!

image.png

Add a new Comments

Some HTML is okay.