Apache 代理和代理重写规则

Apache 代理和代理重写规则

我将 Apache 服务器设置为本地服务器的代理,该服务器监听端口 8080。无论我是否指定有效的代理,它都可以正常工作。两种配置都可以正常工作。

配置 1:

<Proxy http://localhost:8080>
    Order deny,allow
    Allow from all
</Proxy>

RewriteEngine on
RewriteRule ^(.*) http://localhost:8080$1 [P]

配置2:

RewriteEngine on
RewriteRule ^(.*) http://localhost:8080$1 [P]

有人能向我解释为什么我不需要指定如配置 2 所示的有效代理吗?

答案1

仅用于Proxy http://localhost:8080应用权限和其他 apache 规则(限制到某些客户端 IP、要求身份验证等),而不是用于配置代理本身。

没有 mod_rewrite 的等效代理将如下所示:

ProxyPass / http://localhost:8080

或者如果您需要应用任何类型的限制:

<Proxy http://localhost:8080>
    Order allow,deny
    Allow from all
    Deny from badguy
</Proxy>
ProxyPass / http://localhost:8080

相关内容