docker Nginx PHP-FPM单机多站点布署的方法
网上尝试过各种方法,处理单机中单NGINX容器,单PHP-FPM容器布署多站点,均无法成功。
经过反思总结,目前共实施两种方法成功:
- 单Nginx,多PHP-FPM
- 单Nginx,单PHP-FPM
单Nginx,多PHP-FPM
docker-compose.yml
version:'2' services: nginx-1.15.1: image:nginx:laster ports: -"80:80" volumes: -./htdocs:/usr/local/nginx/html -./etc/nginx/nginx.conf:/etc/nginx/nginx.conf:ro -./etc/nginx/conf.d:/etc/nginx/conf.d -./log/nginx:/var/log/nginx networks: -leoedu-network php-fpm-a: image:php-fpm:laster volumes: -./htdocs/a.com:/var/www/html networks: -leoedu-network php-fpm-b: image:php-fpm:laster volumes: -./htdocs/b.com:/var/www/html networks: -leoedu-network networks: leoedu-network: driver:bridge
nginx配置文件:
server{
listen80;
charsetutf-8;
server_namea.com;
root/usr/local/nginx/html/a.com;
indexindex.htmlindex.htmindex.php;
error_log/var/log/nginx/a.com-error.log;
access_log/var/log/nginx/a.com-access.log;
location~\.php${
fastcgi_passphp-fpm-a:9000;
fastcgi_indexindex.php;
fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;
includefastcgi_params;
}
}
单Nginx,单PHP-FPM
docker-compose.yml
version:'2' services: nginx-1.15.1: image:nginx:laster ports: -"80:80" volumes: -./htdocs:/usr/local/nginx/html -./etc/nginx/nginx.conf:/etc/nginx/nginx.conf:ro -./etc/nginx/conf.d:/etc/nginx/conf.d -./log/nginx:/var/log/nginx networks: -leoedu-network php-fpm-7.2.5: image:php-fpm:laster volumes: -./htdocs:/var/www/html networks: -leoedu-network networks: leoedu-network: driver:bridge
NGINX配置关键点在于:
astcgi_paramSCRIPT_FILENAME/var/www/html/nick.com/$fastcgi_script_name;
具体原因,回头有空补上,此篇纯做记录
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。