两台服务器(多台服务器是一样的配置方式):
192.168.1.120 : nginx + php-fpm
192.168.1.121 : php-fpm
一、配置nginx服务器
/etc/nginx/conf.d/jh.mytest.com.conf
upstream fzjh{
server 127.0.0.1:9000 weight=1;
server 192.168.1.121:9000 weight=1;
}
server{
listen 80;
server_name jh.mytest.com;
index index.php;
root /www/jhmytest;
location ~ \.php$ {
fastcgi_pass fzjh;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
二、配置php -fpm
server-01: 192.168.1.120(跟nginx同一台服务器)
/etc/php-fpm.d/www.conf
; 因为跟nginx同一台服务器,所以可以配置成127.0.0.1
; 监听的IP:端口
listen = 127.0.0.1:9000
; 允许的客户端地址
listen.allowed_clients = 127.0.0.1
server-02: 192.168.1.121
/etc/php-fpm.d/www.conf
; 因为需要让nginx那台服务器通过IP可以访问php-fpm,因此需要监听的IP为本机的内网IP
; 监听的IP:端口
listen = 192.168.1.121:9000
; 允许的客户端地址,可设置只允许nginx那台服务器访问
listen.allowed_clients = 192.168.1.120
三、部署代码
分别在两台服务器的
/www/jhmytest
文件夹下放代码
如:都在 /www/jhmytest 下创建一个 index.php ,一个输出 server1,一个输出server2 每次刷新页面时会轮流输出server1 和 server2(假设权重weight 配置为一样的情况下)
注解:
1、在请求PHP脚本时,nginx会将请求转发给 fzjh
;
2、fzjh
对应的是两台服务器 127.0.0.1:9000
和 192.168.1.121:9000
,根据权重,每次请求按权重去选择服务器;
3、选择一个服务器后,对应的服务器处理完成再后返回给客户端;
网友评论