簡體   English   中英

如何在.htaccess中制定正確的mod_rewrite規則

[英]How to make correct mod_rewrite rules in.htaccess

我試圖制定重寫規則,將這個長網址重寫為SEO友好的網址。 但是,我的規則不起作用,目標網址變成了404頁。 我將不勝感激。 謝謝!

這是原始網址的示例

http://www.mydomain.com/index.php?module=product&pId=102&id=14495&category=computer/DELL&start=0/

這是我的改寫規則

RewriteRule ^ module /([[^ /] )/ pId /([^ /] )/ id /([^ /] )/ category /([^ /] )/ start /([^ /] *)$ / index .php?module = $ 1&pId = $ 2&id = $ 3&category = $ 4&start = $ 5 [L]

這是轉換后的網址

http://www.mydomain.com/index/module/product/pId/102/id/14495/category/computer/DELL/start/0/

乍一看,您就可以匹配/start/[^/]*$ 但是您的URL包含一個正斜杠start/0/ ,正則表達式不包含此前綴。

因此,最好在/?后面加上一個斜杠/? 或者更確切地說,通過/start/(.*)$允許最后的匹配模式完全不被察覺。

但是無論如何,僅僅刪除文件擴展名和交易“&”號和正斜杠的等號並不能使URL更好或更友好。 目標應該是參數合並以提高可讀性。 當代的搜索引擎實際上並不在乎GET參數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM