htaccess 301将博客/用户名重定向到用户/用户名

时间:2013-09-15 02:03:45

标签: .htaccess redirect mod-rewrite

我知道这一定必须在此之前得到解答所以我提前道歉,但尽管我搜索了很多 - 我找不到合适的答案。

我有一个网址,例如:www.domain.com/blog/username我想重定向到www.domain.com/users/username

另一个例子:

www.domain.com/blog/joe-blogs becomes www.domain.com/users/joe-blogs 
www.domain.com/blog/bill jones becomes www.domain.com/users/bill jones
www.domain.com/blog/adam becomes www.domain.com/users/adam

我试过了:

Rewriterule ^blog/(.+)$ ./users/$1

但这不太对,导致404。

我还希望www.domain.com/blog重定向到www.domain.com/users

3 个答案:

答案 0 :(得分:1)

我觉得你很亲密。将您的规则更改为:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
Rewriterule ^forum/blog/(.+?)/?$ /users/$1 [L,NC,R=301]

答案 1 :(得分:0)

使用.htaccess文件,您可以执行mod_rewrite,它可以让您使用网页进行诱饵和切换,还可以设置自定义错误文档。您可以通过在PHP中使用对header()的简单调用来执行简单重定向。把它放在orig的顶部。 weppage(s)并设置目标网页:

    <?php header('Location:http://www.somesite.com/users/username'); ?>

答案 2 :(得分:0)

使用 RedirectPermanent

RedirectPermanent /blog/username /users/username

如果以上不起作用..

RewriteEngine On
RewriteRule /blog/username /users/username [R=302]
RewriteRule /blog /users [R=302]