2011-03-22 53 views
0

我有一個網站,顯示的URL:宙斯重寫規則

/work.php?cat=identity 

通常我會研究如何使用mod_rewrite但不幸的是我的主機(Namesco)使用宙斯,而不是Apache的,這很奇怪。我將如何使用Zeus的重寫規則轉換爲:

/work/identity 

這是一個更清潔,更好的搜索引擎友好的版本。最重要的是,我仍然需要$ _GET變量處於活動狀態,因爲它需要從數據庫中獲取有關變量cat的信息。

我從來沒有重寫過網址,所以我不知道從哪裏開始。我試圖用它救了我的Web文件夾

match URL into $ with ^/work.php?cat=/(.*) 
if matched set URL= /work/$ 

內不幸的是它不工作,這rewrite.script文件中的變化。任何人都可以幫助或者提供替代方案嗎?

+0

你說的宙斯是什麼意思?您是否想知道Zeus ZXTM負載平衡器軟件? – 2011-03-22 11:58:48

+0

我的主機提供商Namesco不使用Apache,它使用Zeus。這就是我所知道的宙斯,我不熟悉任何其他產品只有宙斯Web服務器,不知道這是否是它的正確名稱。我知道Nameco在他們的網站上告訴我的是什麼 – 2011-03-22 12:06:15

回答

2

曾與一個快速的打法,我相信我已經證明了自己,請求重寫不能操縱URL的查詢元素。

有一個潛在的解決方案,但它變得更加難看!

您可以使用ZWS的「Perl擴展」來實現此目的。實質上,您將請求傳遞給ZWS中的Perl引擎,對其運行腳本,然後將結果傳回給ZWS。

但恐怕這有點超出我的能力!我是「宙斯流量管理器」之類的章......

尼克

+0

我會獎勵您爲我清理它的賞金。乾杯 – 2011-03-29 14:37:39

1

宙斯重寫規則能夠訪問URL字符串的查詢部分。你失蹤了最關鍵的事情看起來是1$在輸出URL和斜線應刪除:

match URL into $ with ^/work.php?cat=/(.*) 
if matched set URL= /work/$ 

應該

match URL into $ with ^/work.php?cat=(.*) 
if matched set URL= /work/$1