有可能,与Squid,使用URLpath正则expression式的反向代理显示后端服务器应用程序,而无需修改原来的url? 例如:我有一个带有squid的外部域名服务器(www.example.com),并希望显示一个运行在内部服务器上的glassfish应用程序,并且这个例子的地址是: http://192.168.1.8:9090/application1/ : http://192.168.1.8:9090/application1/ :9090/application1/ http://192.168.1.8:9090/application1/像http://www.example.com/service1这样的http://www.example.com/service1但没有修改原来的url。
客户端 – > http://www.example.com/service1 < – > [Squid] < – > http://192.168.1.8:9090/application1/
这是我的例子squidconfiguration:
http_port 80 accel defaultsite=webserver.mio acl all src all acl localnet src 0.0.0.0/8 192.168.1.0/24 acl foo urlpath_regex -i ^/foo cache_peer 192.168.1.8 parent 81 0 proxy-only name=locale cache_peer_access locale deny foo cache_peer_access locale allow all cache_peer 192.168.1.9 parent 80 0 proxy-only name=server1 cache_peer_access server1 allow foo url_rewrite_program /etc/squid/sqredir -f /etc/squid/sqredir.conf url_rewrite_children 8 startup=4 idle=1 concurrency=8 http_access allow all
这是我的redirecturl_rewrite_programconfiguration:
/foo/* http://192.168.1.9/pippo/index.html
但每次我尝试使用URL重写鱿鱼程序,Squidredirect我的内部服务器。 如果我不使用它,Squid会插入/ foo /我尝试访问的每个URL,产生错误404。因为foo文件夹在后端服务器上不存在。