apache 禁止在Docker PHP官方图片中使用

8aqjt8rx  于 2022-12-14  发布在  Apache
关注(0)|答案(4)|浏览(150)

我正在测试官方的图像处理器PHP:

docker run -d -p 8000:80 --name test php:7-apache

然后,我测试http://localhost:8000,我发现:

Forbidden

You don't have permission to access / on this server.

我做错了什么?

2admgd59

2admgd591#

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

转到您的项目文件夹并运行上面的命令,或者用您的项目目录替换$PWD。-v会将您的项目同步到Docker容器。
或者创建一个Docker文件并使用copy在容器中运行项目。
以上任何一个都可以解决您的问题。错误的可能原因是没有要呈现的项目。

mfpqipee

mfpqipee2#

这个图片中没有hello world,/var/www/html/是空的,所以没有内容可以查看。
我们建议您添加一个自定义的php.ini配置。通过在上面的Dockerfile文件中再添加一行并运行相同的命令来构建和运行它,将其复制到/usr/local/etc/php中:

FROM php:7.0-apache
COPY config/php.ini /usr/local/etc/php/
COPY src/ /var/www/html/
klh5stk1

klh5stk13#

如果你没有文件,它的行为是正常的。但如果你有,可能是权限的问题。
错误403可能是权限问题。请在容器中运行命令:

$ ls -lsh

如果字母'r'(读)不要,可以试试:

$ chmod +r <file>
vmjh9lq9

vmjh9lq94#

编辑/添加.htaccess重写规则:
.htaccess

...
RewriteRule /
...

相关问题