网上尝试过各种方法,处理单机中单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 {
listen 80;
charset utf-8;
server_name a.com;
root /usr/local/nginx/html/a.com;
index index.html index.htm index.php;
error_log /var/log/nginx/a.com-error.log;
access_log /var/log/nginx/a.com-access.log;
location ~ \.php$ {
fastcgi_pass php-fpm-a:9000;
fastcgi_index index.php;
fastcgi_param _FILENAME $document_root$fastcgi_ _name;
include fastcgi_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_param _FILENAME /var/www/html/nick.com/$fastcgi_ _name;
具体原因,回头有空补上,此篇纯做记录
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
继续阅读与本文标签相同的文章
上一篇 :
研究人员在诊断前训练AI发现阿尔茨海默病
下一篇 :
安卓收费,为什么对中国汽车来说挺麻烦?
-
新建SpringBoot项目pom文件第一行报错 Unknown error
2026-05-16栏目: 教程
-
eclipse 插件
2026-05-16栏目: 教程
-
java8出来都5年了,内部迭代你懂了吗?
2026-05-16栏目: 教程
-
java集合|遍历HashMap的四种方法
2026-05-16栏目: 教程
-
关于编译器与解释器
2026-05-16栏目: 教程
