Docker NGiNX/PHP服务不为PHP服务



我已经设置了一个docker-compose.yml文件来启动NGiNX服务器并提供PHP内容,问题是当我访问localhost:8080时,它一直显示默认的NGiNX欢迎页面。

这是我的docker-compose.yml

version: "3"
services:
web: 
image: nginx:latest
ports:
- "8080:80"
volumes:
- ./public:/public
- ./site.conf:/etc/nginx/conf.d/site.conf
links:
- php
php:
image: php:8-fpm
volumes:
- ./public:/public

这是我的site.conf

server {
index index.php index.html;
error_log  /var/log/nginx/error.log;
access_log /var/log/nginx/access.log;
root /public;
location ~ .php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass php:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}

如果public文件夹中有一个index.php文件,您只需要将docker-compose.yml更改为:

volumes:
- ./public:/public
- ./site.conf:/etc/nginx/conf.d/default.conf

最新更新