在线咨询

添加金飞科技微信

微信咨询

添加金飞科技企业微信

企业微信

电话沟通

132-5355-1112

电话咨询
宿主机nginx与docker的PHP结合
日期:2022-12-04

1、本机正常安装nginx

2、安装docker

3、拉取php-fpm,如:

docker pull php:5.4-fpm

4、启动docker php

如php网站在宿主体的路径为:/home/wwwroot/abc.com

则启动docker php的命令可以为

docker run -d --name php54 -p 9001:9000 -v /home/wwwroot/abc.com:/var/www/html php:5.4-fpm

5、修改添加nginx中的配置

location ~ \.php$ {
   root html;
   fastcgi_pass 127.0.0.1:9001;
   fastcgi_index index.php;
   fastcgi_param SCRIPT_FILENAME /var/www/html$fastcgi_script_name;
   include fastcgi_params;
}

 

如果出现:

no input file specified

可以把防跨站攻击关闭一般即可解决

常见问题:

1、PHP添加mysql mysqli扩展

进入docker php内部

docker exec -it php54 /bin/bash

执行命令安装扩展

./docker-php-ext-install mysql
 
./docker-php-ext-install mysqli

重启docker即可

2、docker内部权限不足,进入docker php内部
docker exec -ti php54 /bin/bash #进入php容器
chown -R www-data:www-data /var/www/html #给定权限
/var/www/html/ #是你代码存放的目录