旧SEO友好URL到新SEO友好URL

时间:2017-03-10 12:04:52

标签: php .htaccess url redirect

我正在尝试更改我的友好SEO网址,因为我们更改了动态网址的格式。

我的问题是我需要将所有用户移动到新的URL,现在是

www.mydomain.com/webpage 

而不是旧的

www.mydomain.com/pages/webpage

使用以下

重定向新的SEO URL
<IfModule mod_rewrite.c>
RewriteEngine On
Options +FollowSymlinks
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . modules/addons/whmcs_cms_plus/seourls.php [L,QSA]
</IfModule>

seourls.php包含:

<?php
$_SERVER['PHP_SELF'] = $_SERVER['REQUEST_URI'];
$_SERVER['SCRIPT_NAME'] = $_SERVER['REQUEST_URI'];
$_REQUEST['m'] = 'whmcs_cms_plus';
require(dirname(dirname(dirname(dirname(__FILE__)))).'/index.php');

旧的URL设置如下:

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^pages/(.*) index.php?url=$1 [QSA]
RewriteRule ^blog/([^/]*)/([^/]*)$ /index.php?url=$1&slug=$2 [L]
RewriteRule ^blog/([^/]*)/([^/]*)/([^/]*)$ /index.php?url=$1&month=$2&year=$3 [L]

IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti*
RewriteBase /
RewriteCond %{HTTP_HOST} ^176\.67\.167\.146$
RewriteRule ^(.*)$ http://www.blacknovadesigns.co.uk/$1 [L,R=301]

如何确保访问旧网址的任何人都被重定向到新网址,我尝试执行以下操作:

RewriteRule ^pages/webdesign$ /webdesign? [L,R=301]
RewriteRule ^pages/business-support$ /business-support? [L,R=301]

但这不起作用,它不会重定向,有没有办法做到这一点?

提前致谢, 凯尔

1 个答案:

答案 0 :(得分:0)

我刚刚将RewriteRule更改为301:

Redirect 301 /pages/webdesign http://www.mydomain.co.uk/webdesign
Redirect 301 /pages/webhosting http://www.mydomain.co.uk/web-hosting

这允许我重定向到新页面,只是不像通过变量那样喜欢这样做。

pages/(.*) /(.*)

谢谢, 凯尔