在Debian上实现PHP负载均衡,通常需要使用反向代理服务器,如Nginx或Apache。这里以Nginx为例,介绍如何在Debian上配置PHP负载均衡。
sudo apt update
sudo apt install nginx
sudo apt install php-fpm
编辑/etc/php/7.x/fpm/pool.d/www.conf
文件(将7.x替换为你的PHP版本),找到listen
行,将其更改为:
listen = /run/php/php7.x-fpm.sock
然后重启PHP-FPM服务:
sudo systemctl restart php7.x-fpm
编辑/etc/nginx/sites-available/default
文件,找到location /
块,将其更改为:
location / {
proxy_pass http://unix:/run/php/php7.x-fpm.sock;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
在http
块中,添加以下内容以配置负载均衡策略:
upstream php_backend {
server unix:/run/php/php7.x-fpm.sock;
server unix:/run/php/php7.y-fpm.sock; # 添加更多的PHP-FPM实例(如果有的话)
}
然后,在location /
块中,将proxy_pass
指向php_backend
:
location / {
proxy_pass http://php_backend;
# ... 其他配置 ...
}
sudo systemctl restart nginx
现在,Nginx已经配置好了PHP负载均衡。你可以根据需要添加更多的PHP-FPM实例,并在upstream
块中将它们添加到服务器列表中。这样,Nginx将自动在所有可用的PHP-FPM实例之间分配请求,实现负载均衡。