.htaccess mod_rewrite ......我想?

时间:2012-02-14 15:10:45

标签: regex .htaccess mod-rewrite

我想知道如何在.htaccess中重定向以下网址:

  

/mysite.com/blog/Something => /mysite.com/blog.php?tag=Something

这是我在不同网站上使用的脚本,但这有点简单:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^([a-zA-Z0-9]+)$ index.php?name=$1
RewriteRule ^([a-zA-Z0-9]+)/$ index.php?name=$1
</IfModule>

先谢谢

2 个答案:

答案 0 :(得分:0)

只需添加此规则:

RewriteRule ^blog/(.*)$ blog.php?tag=$1 [L,QSA,NC]

更新:根据您的评论,这是您需要的规则:

RewriteRule ^blog/([^/]*) blog.php?tag=$1 [L,QSA,NC]

答案 1 :(得分:0)

尝试将以下内容添加到站点根目录中的.htaccess文件中。

RewriteEngine on
RewriteBase / 

#/mysite.com/blog/Something to /mysite.com/blog.php?tag=Something
RewriteRule ^blog/(something)$ blog.php?tag=$1 [L,NC,R=301] 

如果something是变量,则将规则更改为

RewriteRule ^blog/(\w+)$ blog.php?tag=$1 [L,NC,R=301] 

如果您希望网址在用户浏览器中保持不变,请删除R=301,如下所示

RewriteRule ^blog/(\w+)$ blog.php?tag=$1 [L,NC]