[英]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.