首页 > 解决方案 > 如何代理 Web 请求并准确转发

问题描述

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

所以我想去 mydomain.com/asd 并且它加载 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。这段代码有什么遗漏吗?

一个想法:

标签: djangoapachehttpproxyvpn

解决方案


推荐阅读