歡迎您光臨本站 註冊首頁

squid反向代理apache的rewrite出來的二級域名打不開

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0

squid反向代理apache的rewrite出來的二級域名打不開

伺服器上有n個虛擬主機,並且一個域名有n個二級域名,大部分二級域名是主域名下通過rewrite規則生成的頁面
現在在該伺服器上安裝squid,並配置好了反向代理功能,可以正常反向代理所有不是通過rewrite生成的二級域名(就是所有虛擬主機都可以打開),但每個虛擬主機下所有通過rewrite生成的二級域名都打不開
例如:
在httpd.conf下配置了www.abc.com,通過squid的反向代理功能可以正常訪問它,在www.abc.com下有一條rewrite規則:
    RewriteCond %{HTTP_HOST} ^sz\.abc\.com$
      RewriteRule /$ /SearchListAction.do?x_Type=1&x_TradeCity=188
問題是通過squid的反向代理功能不訪問http://sz.abc.com

如果把squid去掉是可以訪問http://sz.abc.com


請問我要如何配置squid才能讓所有的二級域名能通過squid正常訪問?
《解決方案》

大家不能剛看不說話阿
《解決方案》

樓主請問你httpd.conf文件里有N個虛擬主機站點,然後每個虛擬主機站點又有rewrite 的二級域名,你的httpd.conf和rewrite規則是怎麼樣的?

我這裡的情況:
httpd.conf 有2個虛擬主機站點,如下:
www.xxx.com
shop.xxx.com

我在DNS上做了*.shop.xxx.com 都CNAME到shop.xxx.com 解析。
然後在shop.xxx.com里放rewrite規則,把2631.shop.xxx.com 的請求指向 鏈接shop.xxx.com/?q=2631

但是我測試的結果是,當我訪問2631.shop.xxx.com 的時候,請求沒有找到虛擬主機站點shop.xxx.com 所以不能應用rewrite規則,結果顯示出來的是返回請求的是第一個虛擬主機站點www.xxx.com。
《解決方案》

原帖由 eclosion 於 2007-9-29 17:05 發表 http://bbs.chinaunix.net/images/common/back.gif
樓主請問你httpd.conf文件里有N個虛擬主機站點,然後每個虛擬主機站點又有rewrite 的二級域名,你的httpd.conf和rewrite規則是怎麼樣的?

我這裡的情況:
httpd.conf 有2個虛擬主機站點,如下:
www.xxx.c ...
察看你的shop.ci123.com生效沒有
《解決方案》

原帖由 oyzjin 於 2007-9-23 17:58 發表 http://bbs.chinaunix.net/images/common/back.gif
伺服器上有n個虛擬主機,並且一個域名有n個二級域名,大部分二級域名是主域名下通過rewrite規則生成的頁面
現在在該伺服器上安裝squid,並配置好了反向代理功能,可以正常反向代理所有不是通過rewrite生成的二 ...
不能訪問是,squid出什麼錯,看看error.log
應該不是大問題
《解決方案》

原帖由 eclosion 於 2007-9-29 17:05 發表 http://bbs.chinaunix.net/images/common/back.gif
樓主請問你httpd.conf文件里有N個虛擬主機站點,然後每個虛擬主機站點又有rewrite 的二級域名,你的httpd.conf和rewrite規則是怎麼樣的?

我這裡的情況:
httpd.conf 有2個虛擬主機站點,如下:
www.xxx.c ...




和你的情況是一樣的
不過我的域名都是二級域名,因為量大,不能所有都做成二級域名,只做了一部分重要的,其它都用rewrite來完成
做法是這樣的:
RewriteCond %{HTTP_HOST} ^sz\.abc\.com$
      RewriteRule /$ /SearchListAction.do?x_Type=1&x_TradeCity=188
《解決方案》

樓主用的是什麼代理模式呢?

既然說到apache用虛擬域了,squid是否用vhost的呢?
《解決方案》

原帖由 killua 於 2007-10-8 11:01 發表 http://bbs.chinaunix.net/images/common/back.gif
樓主用的是什麼代理模式呢?

既然說到apache用虛擬域了,squid是否用vhost的呢?
hosts_file /etc/hosts

http_port 3128 vhost vport defaultsite=www.abc.com
cache_peer 192.168.102.244 parent 80 0 no-query originserver name=dXX
《解決方案》

那估計是apache配置的問題了,squid一般沒啥問題
《解決方案》

原帖由 killua 於 2007-10-9 12:13 發表 http://bbs.chinaunix.net/images/common/back.gif
那估計是apache配置的問題了,squid一般沒啥問題


問題找到了,是我的測試環境和真實環境不同做成的,修改了rewrite規則 就可以了
謝謝大家

[火星人 ] squid反向代理apache的rewrite出來的二級域名打不開已經有430次圍觀

http://coctec.com/docs/service/show-post-35186.html