我正在寻找networking,但我不知道如何去做我正在寻找的东西。 所以我正在寻找的是一个代理,它将根据我已经放在url(GET)的IP地址前进HTTP查询。
所以,例如:
我请求: http://host/query/IP_A它应该做的是:ME => GET HTTP myhost / query / IP_A => GET IP_A ===> GET IP查询到IP_A并返回给发件人!
我一直在阅读proxypass,reverseproxy,proxymatch和mod_rewrite …但我不明白为什么它不工作! 而我没有日志….这是不是很酷,当debugging时间来了! 🙁
这是我的实际configuration:
<VirtualHost *:80> ServerName myServer DocumentRoot /home/me/www/htdocs # RewriteCond ^.*/query/(.*) # RewriteRule (.*) http://$1 [P] ProxyPassMatch ^.*/query/(.*) http://$1 ErrorLog logs/me-error_log CustomLog logs/me-access_log debug </VirtualHost>
这是一个静态工作的例子:
ProxyPass / http://IP_A
ProxyPassReverse / http://IP_A
所以,当我访问networking服务器,它直接到IP,并返回我的HTTP响应。
Thx的帮助!
你的用例有点不清楚。 这听起来很像一个普通的Web代理(它接受来自浏览器的请求,然后代表浏览器从远程站点获取内容)。
但要做你想做的事情:
<VirtualHost *:80> RewriteRule ^/query/(.*) http://$1 [P] <VirtualHost *:80>
这将采取任何关于/query/并将其追加到http:// ,然后作出结果的代理请求。 正如@EEAA所说,这是一个安全的噩梦(有人可以使用你的服务器来攻击远程系统),但它会做你想做的。
您可能需要了解如何使用Apache作为转发代理(如mod_proxy文档中所述),然后查看是否满足您的需求。