大佬教程收集整理的这篇文章主要介绍了linux – 透明地在一个地址上提供多个Web应用程序,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
是否可以通过单端口地址透明地提供这些?也许通过添加第三个http服务器来转换所有请求(例如http://localhost/app1& http://localhost/app2).我选择的平台是Linux
@H_675_2@由于Apache最有可能为您提供和/或最容易部署,因此,如果安装了mod_proxy_http,那么包含在Apache配置文件相关部分中的这段代码应该为您提供所需的最小配置.并启用:
# ... [snip] ... <VirtualHost *:80> # ... [snip] ... # This line prevents mod_proxy from acTing as a forWARD proxy # Yes it looks silly,but it's correct for reverse proxy configurations Proxyrequests Off # Rails app on port 8080 ProxyPass /app1 http://localhost:8080 ProxyPassReverse /app1 http://localhost:8080 # CherryPy app on port 8081 ProxyPass /app2 http://localhost:8081 ProxyPassReverse /app2 http://localhost:8081 # ... [snip] ... </VirtualHost>
更新:以下是各种服务器的一些链接(有时是密集的):
> Apache mod_proxy
> Nginx HttpProxyModule
> @L_607_16@
说到智者
还要考虑使用反向代理,后端应用程序将不再接收来自发起请求的客户端的IP的请求.相反,所有请求似乎都来自localhost(127.0.0.1).因此任何与客户端IP相关的逻辑都将停止运行.如果您的应用程序需要此请求元数据,则需要遵循依赖于反向代理http服务器的过程.
在Apache中,mod_proxy自动向请求添加X-ForWARDed-For标头,其值是进入Apache的请求的IP地址(或者已转发请求的IP列表,如果您有多个反向代理的链) ).对于Nginx,我相信您可能必须指示服务器发送此类标头(详细信息在上面的链接中).
如果您的后端应用程序关注原始客户端请求中的Host:头,则您需要修改该代码以查找(在Apache中)X-ForWARDed-Host头.
@H_675_2@ @H_675_2@@H_675_2@以上是大佬教程为你收集整理的linux – 透明地在一个地址上提供多个Web应用程序全部内容,希望文章能够帮你解决linux – 透明地在一个地址上提供多个Web应用程序所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。