Mein Host hat Nginx bereitgestellt und mit der Zuordnung zu Port 80 begonnen,
Dann habe ich ein Image von php7-fpm in einen neuen Container gezogen und mit der Zuordnung von Port 9000:9000 begonnen,
Wie kann ich Nginx auf dem Host mit PHP im Container verknüpfen? Vielen Dank für die Antwort.
10.07
Ich habe auf die externe Netzwerk-IP zugegriffen und das www-Stammverzeichnis im Docker-Container eingegeben (Standard ist /var/www/html)
Mein Host Die Nginx-Konfiguration des Hosts lautet wie folgt:
<code> ······· location / { root /var/www/XX; #宿主机的web应用所在目录 index index.html index.php; } ······· location ~ \.php$ { root /var/www/XX; #宿主机的web应用所在目录 fastcgi_pass 192.168.42.18:9000; #docker容器php-fpm分配的内网ip和端口 fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name; # /var/www/html 是php容器的页面存放目录 include /usr/local/nginx/conf/fastcgi_params; #宿主机nginx所在目录 } </code>
Wie kann ich externen Netzwerken den Zugriff auf das Verzeichnis /var/www/XX
ermöglichen?Mein Host hat Nginx bereitgestellt und mit der Zuordnung zu Port 80 begonnen,
Dann habe ich ein Image von php7-fpm in einen neuen Container gezogen und mit der Zuordnung von Port 9000:9000 begonnen,
Wie kann ich Nginx auf dem Host mit PHP im Container verknüpfen? Vielen Dank für die Antwort.
10.07
Ich habe auf die externe Netzwerk-IP zugegriffen und das www-Stammverzeichnis im Docker-Container eingegeben (Standard ist /var/www/html)
Mein Host Die Nginx-Konfiguration des Hosts lautet wie folgt:
<code> ······· location / { root /var/www/XX; #宿主机的web应用所在目录 index index.html index.php; } ······· location ~ \.php$ { root /var/www/XX; #宿主机的web应用所在目录 fastcgi_pass 192.168.42.18:9000; #docker容器php-fpm分配的内网ip和端口 fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name; # /var/www/html 是php容器的页面存放目录 include /usr/local/nginx/conf/fastcgi_params; #宿主机nginx所在目录 } </code>
Wie kann ich externen Netzwerken den Zugriff auf das Verzeichnis /var/www/XX
ermöglichen?
Zuallererst verwendet die Verbindung zwischen Containern den Parameter --link, nicht über IP oder über den Mapping-Port -p.
Zweitens besteht die beste Vorgehensweise für die Verwendung von Nginx mit PHP darin, dass beide Container dasselbe Datenvolumen (d. h. das Codeverzeichnis) bereitstellen.
Es wird empfohlen, sich zunächst mit der grundlegenden Verwendung von Docker vertraut zu machen.
https://docs.docker.com/
In Ihrer Konfiguration:
<code>fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name; </code>
geändert in:
<code>fastcgi_param SCRIPT_FILENAME /var/www/XX/$fastcgi_script_name;</code>
Probieren Sie es aus;
Sie können darauf zugreifen, indem Sie direkt auf Nginx zugreifen, und Nginx leitet die Anfrage weiter.