0

可以重写此 URL:

http://wwww.mywebsite.com/number_one/

到这个网址:

http://www.mywebsite.com/?n=one

在.htaccess 中?

4

1 回答 1

2

我猜你想用mod_rewrite来做这件事。在这种情况下,您需要的是RewriteCond匹配查询字符串:

RewriteCond %{QUERY_STRING} ^n=([^&]+)
RewriteRule ^$ number_%1?

?末尾的RewriteRule告诉 mod_rewrite 丢弃旧的查询字符串。)

另请注意,正如所写,这是一个内部重写。如果您希望更改对用户可见,请将标志[R](或者[R=301]如果您想要永久重定向)附加到RewriteRule.


编辑:如果你想走另一条路,从site.com/number_onesite.com/?n=one的问题现在读到的,它更容易:

RewriteRule ^number_([^/]+) ?n=$1

(如所写,此重写规则将丢弃数字后面的第一个斜杠之后的任何内容,以及任何现有的查询字符串参数。如果需要,您可以通过将[QSA]标志添加到规则来保留原始查询字符串。)

于 2012-12-30T11:21:41.810 回答