我有一个Amazon Web Services VPC设置了公有和私有子网。我在公共子网上有一个接收DNS请求的nginx服务器。但是,我想将这些请求重定向到私有子网网络服务器。我通过使用curl到私有子网机器的私有IP(非公用路由)来测试nginx机器上的AWS/VPC路由。 Curl返回预期结果。然而,当我有nginx做了一个返回301到相同的专用IP,结果是搜索引擎的结果,就好像重定向发生在路由表规则之外,并且不被识别为有效地址。有没有我错过的nginx配置?nginx从aws公共子网重定向到私有子网不起作用
2
A
回答
4
是的 - 请记住,'重定向'将以301或302代码和新地址访问客户端浏览器。如果地址不可公开路由,它将失败,因为它是请求重定向地址的浏览器,而不是代理服务器(nginx)。为了证明这一点,如果你设置你的nginx重定向到http://www.yahoo.com,它会工作的很好。
相反,您应该使用nginx的proxy capabilities - 这意味着nginx会接收请求,将它们传递给代理服务器,从中检索响应并将它们发送给客户端。
最基本的实现是Nginx的配置文件在您的服务器指令中创建一个位置指令:
location/{
proxy_pass http://10.0.0.5/;
}
这将传递给大众IP的所有请求到私有IP。当然,您可以通过请求/响应头文件,资源等来做很多事情。一个好的起点可能是Setting Up a Simple Proxy Server。 This link也有一些更多的配置选项,是一个很好的例子。
相关问题
- 1. 私有子网中的公共和Tomcat中的AWS Apache
- 2. AWS:EC2公共子网无法ping EC2私人子网
- 3. NGINX:子文件夹子域重定向不起作用
- 4. 如何确定AWS VPC子网是否为“公有子网”?
- 5. 从子域重定向到子目录不起作用
- 6. 网站重定向到子子文件
- 7. 从网域到子网域的网址重定向
- 8. 使用nginx将301从子域重定向到域特定网址
- 9. 重定向到从子域(AWS,Route53)域
- 10. AWS连接到例如在公共子网
- 11. Nginx通配符子域重定向到非www网站
- 12. 如何从私人共享子vb.net调用公共子
- 13. 从根目录重定向到子文件夹不起作用
- 14. Nginx - 上游重定向不起作用
- 15. 通过SSL从公共子网上的ec2访问私有子网上的RDS数据库
- 16. nginx和公共子目录
- 17. 重定向移动网站到子域
- 18. Nginx永久重定向到特定子目录的不同网址
- 19. Nginx的重定向网址
- 20. Nginx重定向www.X.domain.com子域
- 21. Nginx重定向*:端口到子域
- 22. Ansible | AWS |修改子网属性自动分配公共IP
- 23. 将AWS裸露域重定向到AWS子域以用于具有CloudFront和SSL的AWS S3网站
- 24. 使用公共和私有子网设置非默认VPC并且不使用“创建VPC”向导
- 25. Sharepoint:将用户从FrontPage重定向到子网
- 26. 为什么我们需要在AWS中使用私有子网+ NAT转换?我们不能只使用公共子网+正确配置的安全组吗?
- 27. 将网址映射到子网域(NGINX)
- 28. AWS - 使用EIP访问私有子网中的实例
- 29. 在aws vpc中使用私有子网的原因是什么?
- 30. 我可以在私有子网内使用AWS ECR