【发布时间】:2014-04-08 19:25:02
【问题描述】:
我的页面通常是这样的:
http://www.url.com/folder/content.php?name=this-is-the-page-title&item_id=129
如您所见,页面标题包含在 URL 中,用破折号分隔。
所以,我想使用 mod_rewrite 将其转换为以下内容:
http://www.url.com/this-is-the-page-title-129.html
为此,我使用 mod_rewrite 规则,例如:
RewriteRule ^([^-]*)-([^-]*)\.html$ /folder/content.php?name=$1&item_id=$2 [L]
不幸的是,使用该规则,我收到了 404 错误。我认为问题在于标题由破折号 (-) 分隔,而分隔符本身也是破折号,因此它可能无法将变量彼此或类似的东西区分开来。
当我像这样将规则从破折号 (-) 更改为斜线 (/) 时,它可以正常工作:
RewriteRule ^([^-]*)/([^-]*)\.html$ /folder/content.php?name=$1&item_id=$2 [L]
但随后 URL 变为:
http://www.url.com/this-is-the-page-title/129.html
...我不想这样做,因为我必须重写页面的整个结构。
有什么办法可以让它发挥作用
http://www.url.com/this-is-the-page-title-129.html
即使页面标题用破折号分隔?
谢谢你:)
【问题讨论】:
标签: .htaccess mod-rewrite