首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Docker基础反向代理:禁止(无权限)

Docker基础反向代理:禁止(无权限)
EN

Stack Overflow用户
提问于 2017-08-21 22:52:22
回答 1查看 495关注 0票数 0

我在8080上启动了jwilder nginx代理

代码语言:javascript
复制
docker run -d -p 8080:80 -v /var/run/docker.sock:/tmp/docker.sock:ro jwilder/nginx-proxy

我运行的是一个标准的php:apache容器,没有映射端口(所以80暴露在容器网络上)。我使用env var来连接代理:

代码语言:javascript
复制
docker run -d -e VIRTUAL_HOST=test.example.com php:apache

在我的本地主机上,我在/etc/hosts中添加了以下内容:

代码语言:javascript
复制
IP test.example.com

现在我在我的计算机上访问text.example.com:8080,所以我尝试连接反向代理(8080),它会将我路由到容器端口80上的php-apache。

但是我得到了这个错误:

错误:

代码语言:javascript
复制
Forbidden

You don't have permission to access / on this server.
Apache/2.4.10 (Debian) Server at test.example.com Port 8080

我遗漏了什么?我是否在某个地方更改了apache配置?(现在都是默认的)。它似乎通过了nginx,因为我看到了一个apache错误,所以我想我需要告诉apache内部(php apache):允许这个‘路由’?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-21 23:05:22

您的标题似乎具有误导性。根据您的描述,您已经设置了一个正常运行的反向代理,并且您使用反向代理连接到的目标已损坏。如果你回顾一下docker hub page on the php:apache image,你会发现很多关于如何将你的php代码加载到图片中并让它正常工作的例子。例如:

代码语言:javascript
复制
$ docker run -d -e VIRTUAL_HOST=test.example.com \
  -v "$PWD/your/php/code/dir":/var/www/html php:7.0-apache
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45800178

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档