Apache代理:基于URL的代理

法提赫·德米尔(Fatih Demir)

我正在用Apache构建一个代理,该代理根据URL代理所有内容。

我的网络服务器在以下位置本地运行: http://proxy

当我导航到http://proxy/{insert-url-here}服务器代理http://proxy/{insert-url-here}到时{insert-url-here},html已正确加载,但资源未加载。

出现此问题的原因是,从我的服务器启动的对所有资源的请求都直接http://proxy用作主机。我希望将请求http://proxy/{insert-url-here}用作主机URL,以便请求可以找到所有资源。

我当前在Apache中为VirtualHost进行的配置非常简单:

ServerAdmin [email protected]
DocumentRoot "C:/proxy/htdocs"
ServerName http://proxy
ServerAlias http://proxy
ErrorLog "logs/error-ssl.log"
CustomLog "logs/access-ssl.log" common

ProxyRequests Off
ProxyPreserveHost On
RequestHeader unset Accept-Encoding

<Location />
   Order allow,deny
   Allow from all    
</Location>

ProxyPassMatch /(.*) http://$1
ProxyPassReverse /(.*) http://$1

所需的解决方案:

我想http://proxy/{insert-url-here}正确地代理{insert-url-here}是否必须完全更改当前配置并不重要。

希望你们能帮助我。

彼德

我了解您的问题。我有一个类似的用例,并且已经在Apache 2.3中进行了测试。确保禁用ProxyPreserveHost,以免传递当前主机。此选项可能会破坏一些动态网址。

您可以通过结合使用Mod_rewrite和Mod_proxy来解决其余问题。您需要分两部分来解决此问题。您需要代理所有内容,然后修复链接。

# Fix broken links -> Make sure your requested url is not included RewriteCond %{REQUEST_URI} !(www.*.nl)

# Clever trick to get the requested url out of the HTTP referer and make it available for the %1 variable RewriteCond %{HTTP_REFERER} (www.*.nl)

# Rewrite all requests to your proxy with the base url from the RewriteCond above and the captured group from this rule made available by the captured group by Regex RewriteRule /(.*) http://proxy/%1/$1

# Proxy only if the broken links are fixed RewriteCond %{REQUEST_URI} www.*.nl

# This rule makes sure you proxy everything, this will cause broken links which you have to rewrite RewriteRule /(.*) http://$1 [P]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Apache-通过代理服务器添加URL重定向

来自分类Dev

apache wordpress代理问题

来自分类Dev

Apache HttpClient 4.3.5设置代理

来自分类Dev

如何确定Apache是用作正向代理还是反向代理?

来自分类Dev

Bitnami Apache代理配置

来自分类Dev

用nginx代理相对URL

来自分类Dev

如何正确使Apache代理NodeJS?

来自分类Dev

基于代理的模型中的Java NullPointerException

来自分类Dev

同一URL上的Apache2 WebSockets反向代理

来自分类Dev

Apache代理-HTTP到HTTPS

来自分类Dev

用于图像代理的Apache重写引擎

来自分类Dev

静态文件的Apache代理传递

来自分类Dev

Apache反向代理无限循环

来自分类Dev

Apache反向代理匹配请求

来自分类Dev

根据URL选择代理

来自分类Dev

代理端口,无需更改Apache中的URL

来自分类Dev

带变量的Apache代理配置

来自分类Dev

如何使用Apache http-core-4.3.3开发反向代理中的目标URL

来自分类Dev

如何使用正向代理后面的Apache反向代理主机

来自分类Dev

Apache.NMS.ActiveMq ConnectionFactory忽略代理URL中设置的预取

来自分类Dev

SNMP代理的测试URL

来自分类Dev

Apache骆驼作为反向代理

来自分类Dev

Zuul反向代理保留URL

来自分类Dev

Kibana 5.0 Apache代理和反向代理配置失败

来自分类Dev

基于密钥文件的SSH代理

来自分类Dev

apache反向代理hhtps

来自分类Dev

使用 apache 反向代理

来自分类Dev

Apache 反向代理配置更改

来自分类Dev

Apache CXF SSL 通过代理