Apache反向代理-带有Cookie的HTTP请求

古哥 网站咨询

我们有一个Apache反向代理,可以正常工作(下面的配置)。现在,我们需要将一些请求转发到另一台服务器(server3.domain.com),并检查用户请求中是否存在名为“ LtpaToken”的cookie。如果不存在Cookie,则会返回错误页面(我们要阻止匿名请求)。

我需要将http(s)://server.domain.com/jsreports/*转发到JSReport的http(s)服务器VM(server3.domain.com IP address),并检查LtpaToken这个cookie是否存在。

有人可以提出一些建议如何实施吗?谢谢!

SSLEngine on
SSLProxyEngine On
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off

ServerName server.domain.com
ServerAlias server.com
ProxyRequests Off
# ProxyPreserveHost On

<Proxy balancer://my_cluster>
BalancerMember https://server.domain.com keepalive=on
BalancerMember https://server2.domain.com keepalive=on status=+H
AllowOverride None
Order allow,deny
allow from all

# ProxySet lbmethod=byrequests
</Proxy>

<Location /balancer-manager>
SetHandler balancer-manager
Order deny,allow
Deny from all
allow from 192.168.1
allow from 5.5.20
allow from 10.0.0
</Location>

ProxyPass /balancer-manager !
ProxyPass / balancer://my_cluster/
ProxyPassReverse / balancer://my_cluster/

回复

共2条回复 我来回复
  • 古哥的头像
    古哥
    联系邮箱:admin#iymark.com
    评论

    您可以检查是否存在LtpaToken=这个cookie,并在“ /forbidden.html”页面中找到该字符串。

    RewriteEngine On
    RewriteCond “%{HTTP:Cookie}” “!LtpaToken=” [NC]
    RewriteRule “.*” “/forbidden.html” [R,P]

    如果要返回HTTP错误(403),则可以将最后一行替换为:

    RewriteRule “.*” – [F]

    2021年04月22日 21:23 0条评论
  • 〖〗的头像
    〖〗
    这个人很懒,什么都没有留下~
    评论

    你这自问自答实在是太无聊了。。

    2021年05月12日 21:19 0条评论
微信小程序
微信公众号