nginx跟php我都是刚接触。
最近需要搭个nginx跟php环境。想使用docker来搭建,一直未成功
静态文件可以显示,php文件无法显示
有时报502错误,有时候是提示no input file specified
附上相关文件
docker-compose.xml
xml
prober: image: tommylau/php-5.2:latest volumes: - prober/src:/var/www/html:rw nginx: image: nginx:latest ports: - "80:80" volumes: - prober/src:/var/www/html:rw - prober/nginx.conf:/etc/nginx/conf.d/default.conf links: - prober
nginx.conf
xml
server { listen 80; server_name localhost; root /var/www/html; index index.html index.htm index.php; location ~* ^.+\.(ico|gif|jpg|jpeg|png)$ { access_log off; expires 1d; } location ~* ^.+\.(css|js|txt|xml|swf|wav)$ { access_log off; expires 10m; } location ~ \.php$ { fastcgi_pass prober:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
Référez-vous à cet article que j'ai écrit : https://icewing.cc/docker-use...
Solution simple : rendre cohérente la structure des répertoires de volumes dans le conteneur nginx et le conteneur php. Par exemple, l'emplacement du fichier de code dans le conteneur nginx est /var/www/html/index.php, puis dans le php. conteneur L'emplacement doit également être /var/www/html/index.php. Bien sûr, vous n’êtes pas obligé de le faire. Les raisons spécifiques sont écrites dans le blog