未从 php:apache 中找到(运行 没有 Dockerfile)

Not Found from php:apache (run without a Dockerfile)

甚至无法从该容器提供静态文件。我做错了什么?

我是 运行

docker run -d -p 8081:80 --name test -v "$PWD":/var/www/html php:apache

并接收下一个尝试从 $PWD

请求任何文件的输出
Not Found
The requested URL was not found on this server.

Apache/2.4.51 (Debian) Server at 0.0.0.0 Port 8081

$PWD 内容进入容器,但未提供

docker exec -it test ls -l /var/www/html
total 44
-rw-r--r-- 1 root root    65 Sep 22 12:59 checkserver.php
-rw-r--r-- 1 root root 16093 Sep 22 12:59 crest.php
-rw-r--r-- 1 root root  1024 Sep 22 12:59 crestcurrent.php
-rw-r--r-- 1 root root   217 Oct 14 08:45 index.html
-rw-r--r-- 1 root root   516 Sep 22 12:59 index.php
-rw-r--r-- 1 root root   488 Sep 22 12:59 install.php
-rw-r--r-- 1 root root   650 Sep 22 12:59 settings.php
-rw-r--r-- 1 root root     5 Oct 13 17:32 test.txt

我在 Apache 容器之前使用 nginx 作为反向代理。问题出在 nginx 配置中。在我将下一行添加到配置后它开始工作。

  location ~ \.php$ {
      proxy_set_header X-Real-IP  $remote_addr;
      proxy_set_header X-Forwarded-For $remote_addr;
      proxy_set_header Host $host;
      proxy_pass http://0.0.0.0:8081;
  }