Я пытаюсь последовать этому примеру и перевести его на python3, чтобы создать прокси-сервер для доступа к некоторым http-страницам через него.
Я запускаю свойскрипт в AWS EC2, где я открыл порт 80.
Я запускаю приведенный ниже код, захожу в firefox и набираю XXXX / www.aena.es (X - публичный ip моего EC2, а aena - испанскийhttp веб-страница).
Я могу заставить свой браузер показывать HTML-код запрашиваемой веб-страницы.Но не сама веб-страница.Есть ли простой способ сделать это?
os.system('sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination ' + local_ip + ':8888')
os.system('sudo iptables -A FORWARD -p tcp --dport 80 -j ACCEPT')
PORT = 8888
class Proxy(http.server.SimpleHTTPRequestHandler):
def do_GET(self):
full_path = 'http:/' + self.path
print(full_path)
req = urllib.request.urlopen(full_path)
self.copyfile(req, self.wfile)
httpd = socketserver.ForkingTCPServer((local_ip, PORT), Proxy)
print("serving at port ", PORT)
httpd.serve_forever()