我有一個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