2014-01-13 42 views
0

我試圖用「Intelligencia.UrlRewriter」重寫URL與特定查詢字符串的網頁子域使用Intelligencia.UrlRewriter到了假冒的子域

比如我想rewite「http://www.silahsahibi.com/subengine.aspx?u=alussilah」到「 http://alussilah.silahsahibi.com/

,這是我的 」在web.config文件

<rewriter> 
    <unless header="HTTP_HOST" match="^((www)\.)?silahsahibi.(.+)$"> 
    <if header="HTTP_HOST" match="^(.*)\.silahsahibi\.([^/]+)$"> 
    <set property="subdomain" value="$1" /> 
    <!--<set property="category" value="$2" /> 
    <rewrite url="^/(\?(.+))?$\?(.+)" to="/SubEngine.aspx?u=${subdomain}&amp;c=${category}" processing="stop"/>--> 
    <rewrite url="^/(\?(.+))?$" to="/SubEngine.aspx?u=${subdomain}" processing="stop" /> 
    </if> 
</unless> 
</rewriter> 

重寫「 的標籤,但不起作用。

我不熟悉正則表達式,所以任何人都可以幫助我呢?

+0

「但不工作」 ......會發生什麼?你得到了什麼結果? – Vache

+0

web.config文件與您的示例一致... – Stephan

+0

感謝您的回覆,我發現假的子域名需要一些dns設置才能正常工作,但我不知道我應該怎麼做。 這個例子在另一個網站上可以正常工作,當我問到它的主人時,他告訴我他的開發者做了一些dns設置 – sharp

回答

0

更改這一部分:

<rewrite url="^/(\?(.+))?$" to="/SubEngine.aspx?u=${subdomain}" processing="stop" /> 

應該

<rewrite url="/(\?(.+))?$" to="/SubEngine.aspx?u=${subdomain}" processing="stop" />