Docker:禁止访问您没有访问此资源的权限

时间:2020-07-11 23:28:48

标签: php docker

我正在尝试访问http:// localhost:8100,我得到的只是:“禁止访问

您无权访问此资源。

位于本地主机端口8100的Apache / 2.4.38(Debian)服务器”

在src /中,我有docker文件和一个php文件夹,其中我同时具有index.php和mysql.php文件。 docker-compose.yml看起来像这样:

version: '3'

services:
  db:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: test_db
      MYSQL_USER: devuser
      MYSQL_PASSWORD: devpass
    ports:
      - "9906:3306"
  web:
    image: php:7.4.0-apache
    container_name: php_web
    depends_on:
      - db
    volumes:
      - ./php/:/var/www/html/
    links:
      - db
    ports:
      - "8100:80"
    stdin_open: true
    tty: true

终端上的命令:

docker-compose up -d
docker exec -ti php_web sh
docker-php-ext-install mysqli

当我尝试访问localhost:8100 / mysql.php时,它工作正常,但是当我尝试打开localhost:8100或localhost:8100 / index.php时,我得到了错误。

关于可能是什么原因的任何线索?我希望我清楚我的问题。

谢谢!

1 个答案:

答案 0 :(得分:0)

根据docker exec -ti php_web ls -la /var/www/html/的输出,我可以在文件名中看到空格:

-rw-r--r-- 1 root root 70 Jul 11 23:06 ' index.php'
drwxr-xr-x 5 root root 160 Jul 11 22:40 . 
drwxr-xr-x 1 root root 4096 Nov 22 2019 .. 
drwxr-xr-x 4 root root 128 Jul 11 22:31 includes 
-rwxr-xr-x 1 root root 118 Jul 11 22:43 mysql.php

重命名并删除空格

mv ' index.php' index.php