2009-11-04 101 views
2

我有網站開發classic ASP。目前URL不是SEO經典ASP中的SEO友好URL?

請建議我如何在ASP中爲我的網站製作SEO友好的網址。

是否有任何支持功能可以幫助在ASP中創建SEO友好的URL?

網址爲這樣的產品信息頁面: http://www.yourdomain.com/store/template/template2/Default.asp?mainpage=product_info&P_ID=18047


感謝您的幫助。

我已閱讀文檔並正確安裝了IIRF。現在我有幾個查詢。我嘗試了幾個重定向示例,他們wrking.I把乾淨的URL放在地址欄中,結果顯示來自原始URL的數據。

我的問題:我仍然有點困惑,因爲重寫和重定向。我不指望你教和指導我相同。請恕我不知道如果我寫有點混淆。請隨時引導我,如果我在搜索引擎優化友好網址的方法錯誤。

我的目標是爲我的購物車創建SEO友好的URL。當頁面在瀏覽器中被解析時,我想要的是什麼,它應該顯示解析鏈接爲SEO友好而不是原始鏈接。

正如我在我的示例中,當我在地址欄中輸入URL時,它沒有被更改爲乾淨的URL。當我在地址欄中輸入乾淨的URL時,它會顯示來自原始URL的數據。

在我的購物車有很多超鏈接到其他網頁。他們也在動態的本質上不是靜態的。我怎樣才能設置這些靜態超鏈接使用IIRF清理URL而無需在我的購物車中進行實質性更改。

問候, 陽光

+2

重複:http://stackoverflow.com/questions/1090553/is-it-possible-to-do-friendly-url-url-rewriting-in-classic-asp – AnthonyWJones 2009-11-04 13:31:07

回答

4

配置IIS做URL重寫。 Microsoft有IIS7(Vista,Server 2008)的插件,但是您可以在IIS5.1(XP)和IIS6(Server 2003)中安裝IIRF(開放源代碼)。

讓所有傳入請求或以/media/(或選擇自己的)開頭的任何路徑都經過未重寫。只有靜態文件,如CSS/JavaScript /圖像。

將所有傳入的請求URL從例如/foo/bar?abc=xyz重寫爲/index.asp/foo/bar?abc=xyz。重寫是全部內部IIS所以最終用戶確實不是看到任何URL重寫。

index.asp,您可以通過

<%= Request.ServerVariables("SCRIPT_NAME") %> 
<%= Request.ServerVariables("PATH_INFO") %> 
<%= Request.ServerVariables("QUERY_STRING") %> 

產生

/index.asp 
/foo/bar 
abc=xyz 
+0

假設他在沒有ASP的IIS7上運行默認安裝。它更可能是一箇舊的IIS6(甚至5)安裝? – 2009-11-04 18:19:39

+0

@justice 我們已經成功安裝了IIRF。現在我們已經編寫了以下重寫規則,但其不起作用。建議: 現有網址:http://domain.com/scripts/page.asp?mid=2&pageid= 5 期望烏爾:http://domain.com/scripts/page/2/5/ ------------- RewriteEngine敘述ON STATUSURL/iirfStatus RewriteLog C:\的Inetpub \ wwwroot的\ IIRF RewriteLogLevel 3 #當有人將亮相默認頁面,他們得到 重寫規則^/$ /scripts/default.asp 的搜索引擎優化#重寫內容鏈接 重寫規則^ /腳本/([^ /] +)/ ([^ /] +)//scripts/page.asp?mid = $ 1&pageid = $ 2 – 2009-11-06 15:06:52

+0

嘗試將其更改爲'RewriteRule ^/scripts/page /([^ /] +)/([^ /] +)/scripts/page.asp?mid=$1&pageid= $ 2' – yfeldblum 2009-11-06 15:52:37