我在.htaccess上有REWRITE RULES的问题。 我试图在静态URL中重写动态URL。
该网站是一个多语种网站。 我已经为所选语言创建了静态URL,如下所示
www.example.net/index.php?lang= de
www.example.net/de/
...and so on....
现在我需要重写这样的URL查询:
www.example.net/de/player.php?Name=Gianfranco&Surname=Zola&id=468
到
www.example.net/de/spieler-Gianfranco-Zola-468.html
我使用的规则是:
RewriteEngine On
RewriteRule ^de/spieler-([^-]*)-([^-]*)-([^-]*)\.html$ /player.php?Name=$1&Surname=$2&id=$3 [L]
如果我点击链接以便在德语中找到与Zola相关的页面,则链接dos不会在请求的个人资料页面上重定向我,而是在我点击链接的同一页面中。
浏览器中显示的链接是正确的 的 www.example.net/de/spieler-Gianfranco-Zola-468.html
但是,如上所述,我无法查看页面播放器中包含的详细信息。
答案 0 :(得分:0)
应该是这样的,
RewriteEngine On
RewriteRule de/spieler-([^-]*)-([^-]*)-([^-]*)\.html$ player.php?Name=$1&Surname=$2&id=$3 [L,NC]
更正:^
是问题&我在player.php前删除了'/'
斜杠
答案 1 :(得分:0)
尝试此规则
RewriteRule ^de/spieler-([^-]*)-([^-]*)-([^\.]*)\.html$ /player.php?Name=$1&Surname=$2&id=$3 [L]
或者
RewriteRule ^de/spieler-([^-]*)-([^-]*)-([0-9]*)\.html$ /player.php?Name=$1&Surname=$2&id=$3 [L]