nginx+php-fpm獨立節點的部署wordpress筆記
以前都是用lnmp一鍵安裝的lnmp環境。
今天同學說他分開部署nginx+php-fpm出現了問題,總是報502,正好我也沒試驗過,於是自己也做了一遍,也遇到些問題,記下來以備以後用到。
node1: 192.168.2.11 nginx+mysql
node2: 192.168.2.12 php-fpm
其中node1和node2前期都安裝了lnmp一鍵安裝包。
因此,安裝過程就不描述了。
直接開始修改引數,操作如下。
node1上的MySQL的配置:
安裝過程略過,說下授權的配置
1
2
3
|
>create database wp; >grant all on wp.* to `wp` @ `192.168.2.%` identified by `123456` ;
>flush privileges; |
node1上的nginx的配置檔案如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
server {
listen 80 default_server;
server_name 192.168.2.11;
index index.html index.htm index.php;
root /home/wwwroot/default ;
#error_page 404 /404.html;
location ~.php$ {
root /home/wwwroot/default ;
fastcgi_pass 192.168.2.12:9000;
fastcgi_index index.php;
includefastcgi.conf; 注意這裡我沒有用fastcgi_params,因為fastcgi_params裡面缺少一行檔案
}
location ~.*.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*.(js|css)?$
{
expires 12h;
}
location ~ /.
{
deny all;
}
access_log /home/wwwlogs/access .log access;
}
|
另外,fastcgi.conf內容如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 注意這行,fastcgi_param比fastcgi.conf就是缺少了這行 fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param REQUEST_URI $request_uri; fastcgi_param DOCUMENT_URI $document_uri; fastcgi_param DOCUMENT_ROOT $document_root; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param HTTPS $https if_not_empty; fastcgi_param GATEWAY_INTERFACE CGI /1 .1;
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version; fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param REMOTE_PORT $remote_port; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_NAME $server_name; #PHP only, required if PHP was built with --enable-force-cgi-redirect fastcgi_param REDIRECT_STATUS 200; |
node2上的php-fpm的配置檔案如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
[global] pid= /usr/local/php/var/run/php-fpm .pid
error_log= /usr/local/php/var/log/php-fpm .log
log_level= notice [www] listen = 192.168.2.12:9000 listen.backlog= -1 listen.allowed_clients = 192.168.2.11 如果註釋掉這行就是表示允許全部IP連線到php-fpm listen.owner= www listen.group= www listen.mode= 0666 user= www group= www pm= dynamic pm.max_children= 10 pm.start_servers= 2 pm.min_spare_servers= 1 pm.max_spare_servers= 6 pm.max_requests = 1000 這個引數設定太小的話,可能會引起間歇性502錯誤 request_terminate_timeout= 100 request_slowlog_timeout= 0 slowlog= var /log/slow .log
|
朋友網站報502,就是因為上面的listen.allowed_clients引數被他設定成了any(被網上一個坑爹的教程害的)
此外,還要在node1和node2上部署上相同的網站原始檔。
在node2上通過scp將node1上的wordpress網站檔案拷貝過來
1
2
|
# scp -rproot@192.168.2.11:/home/wwwroot/default /home/wwwroot/default # chown www.www /home/wwwroot/default |
要注意的是:node1的執行nginx的使用者id在node2上也要存在,並且id還要相同,否則可能訪問時候報錯。
在node1啟動nginx,在node2上啟動php-fpm。
在瀏覽器訪問http://192.168.2.11即可進入wordpress的安裝介面。輸入資料庫的相關資訊即可
這裡沒有考慮檔案(及圖片)的儲存,實際生產環境中,應該使用共享儲存NFS或者分散式儲存。
本文轉自 lirulei90 51CTO部落格,原文連結:http://blog.51cto.com/lee90/1794937,如需轉載請自行聯絡原作者
相關文章
- 2021年Wordpress手把手教你做個獨立站——部署篇
- fabric orderer 排序節點的筆記排序筆記
- 一款國產獨立遊戲的“死亡筆記”遊戲筆記
- 晚上:上課筆記,聽完自己獨立完成筆記
- Solidity語言學習筆記————39、獨立彙編Solid筆記
- 獨立服務的優點有哪些
- 【筆記】jQuery原始碼(節點遍歷)筆記jQuery原始碼
- 伺服器使用獨立ip的優點伺服器
- .NET Core部署中你不瞭解的框架依賴與獨立部署框架
- Wordpress獨立站資料庫連線錯誤的三種解決方式資料庫
- 微信小程式系統獨立原始碼部署微信小程式原始碼
- 獨立站運營——獨立站的3種搭建方式
- 記一款獨立遊戲之死遊戲
- 數藏nft系統開發原始碼獨立部署原始碼
- 永春堂系統開發原始碼獨立部署原始碼
- 在WeGame試玩節,看到中國獨立遊戲的發展GAM遊戲
- 90% 以上的獨立開發者,敗在了認知環節
- 如何部署Qtum量子鏈節點QT
- fabric多機多節點部署
- Redis的安裝及建立節點、部署群集Redis
- 門店預約系統開發原始碼獨立部署原始碼
- flask筆記:部署flaskFlask筆記
- MongoDB單節點部署與基本操作MongoDB
- kubernetes環境部署單節點redisRedis
- 前端筆記之JavaScript(十)深入JavaScript節點&DOM&事件前端筆記JavaScript事件
- <react學習筆記(7)>操作DOM節點,元件傳參React筆記元件
- 程式設計師想獨立賺錢的幾個注意點程式設計師
- 七人拼團系統開發原始碼獨立部署原始碼
- 開箱即用Bumblebee獨立部署搭建webapi閘道器詳解WebAPI
- 互斥與獨立
- 使用獨立伺服器有什麼優點呢伺服器
- 伺服器做獨立vlan有什麼優點伺服器
- 【獨立開發賺錢】從點子到創收
- 1-3節筆記筆記
- 獨立按鍵的掃描
- 獨立物理機的優勢
- 獨立模型的相關需求模型
- kubernetes——二進位制多節點部署
- 使用devstack/pike部署多節點實驗dev