代码之家  ›  专栏  ›  技术社区  ›  User

如何代理web请求并准确转发它

  •  0
  • User  · 技术社区  · 7 年前

    我试图将HTTP连接代理到一个网站,这样我就可以始终从我服务器的同一IP地址,从世界上的任何设备访问它。我正在尝试在没有任何安装或浏览器配置(如代理)的情况下执行此操作。

    所以我想去我的域名。com/asd和it加载targetwebsite。com/asd完全正常,就像基于浏览器的VPN一样。它将始终用于同一个目标域,尽管页面确实从其他域加载内容。

    我真的不知道是否有一个简单的nginx/httpd配置可以实现这一点,所以我只是尝试在Django中实现。

    def index(request):
        url = "https://targetwebsite.com" + request.META['PATH_INFO']
    
        if request.method == 'GET':
            r = requests.get(url)
        elif request.method == 'POST':
            r = requests.post(url)
    
        return HttpResponse(r.text)
    

    这有时是可行的。有一些奇怪的Javascript错误,奇怪的404。此代码是否缺少任何内容?

    一个想法:

    • 所有请求之间的共享/静态会话cookie,因此可以进行登录
    0 回复  |  直到 7 年前
    推荐文章