所以我只是将我的网站从/ blog移动到/(根)目录。现在对于那些知道上一个/博客URL的人,我想将它们重定向到新的URL(/)。
所以我把这个index.php文件放在/ blog目录中:
<?php
header( 'Location: http://www.abc.com' ) ;
?>
它有效。但我希望如此:当用户访问来自旧网址的任何博文时,如http://abc.com/blog/sample-post,而不是重定向到abc。 com,它应该重定向到abc。 COM /样品交
我认为也可以通过.htaccess重定向来完成,但我不知道htaccess方法。
请给我代码:)
答案 0 :(得分:1)
未经测试,但这应该在.htaccess文件中使用
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.abc.com [OR]
RewriteCond %{HTTP_HOST} ^abc.com
RewriteRule ^blog/(.*)$ http://www.abc.com/$1 [L,R=301]
RewriteCond %{HTTP_HOST} ^blog.abc.com
RewriteRule ^blog/(.*)$ http://www.abc.com/$1 [L,R=301]
答案 1 :(得分:0)
RewriteRule ^blog/(.*)$ $1
这需要在根文件夹中,或者应用于主Apache配置(不在.htaccess中)。
关于.htaccess重定向的通常规则适用 - 包括RewriteEngine on,Options FollowSymLinks和AllowOverride FileInfo都包含在某处。有关http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriterule的详细信息。
答案 2 :(得分:0)
<?php
$uri=$_SERVER['REQUEST_URI'];
$newuri=preg_replace('|\/blog(.*)|', '', $url);
header( 'Location: http://www.abc.com'.$newuri);
?>
我认为这会有效