[英]Docker php-fpm + nginx / sometimes files not found on php file
我目前陷入一个问题。 我有一个运行多个docker的服务器。
在这里,我需要放一个php nginx。
我有一个像这样的docker-compose文件:
version: 2
services:
web:
image: nginx:latest
ports:
- 'XXXX:80'
- 'XXXX:443'
volumes:
- ./code:./code
- ./site.conf:/etc/nginx/conf.d/default.conf
environnement:
- VIRTUAL_HOST:...
- LETSENCRYPT_HOST:....
- LETSENCRYPT_MAIL:....
networks:
- default
php:
build:
context: ./php
volumes:
- ./code:/code
networks:
- default
networks:
default:
external:
name:webproxy
我的网络使我获得了自动加密的letencrypt ssl
我的php的dockerfile是:
FROM php:7.2-fpm
RUN apt-get update \
&& apt-get install -y --no-install-recommends libpq-dev \
&& docker-php-ext-install mysqli pdo_pgsql pdo_mysql
我的配置是:
server{
listen 80
index index.php index.html
server_name localhost
error_log /var/log/nginx/error.log
access_log /var/log/nginx/access.log
root /code
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass php 9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info
}
}
我的文件夹结构类似于:
- imgFolder
- GameFolder
- index.html
- service.php
- imgFolder
- cssFolder
- desktop.html
- mobile.html
- main.css
似乎一切都很好,我让我的docker-compose组成了-d我所认为的一切似乎都很好: HTML可以很好地呈现。 SSL也很适用
但有时(不是所有时间,而是一半时间),我的php文件都没有在ajax请求中找到(得到了在网络调试中找不到的404文件)
有人知道为什么有时找不到我的service.php吗?
Dunno如果可以帮助的话,但是我和这个码头工完全一样地工作(不同的端口),并且我的php文件调用没有问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.