我在www newdomain com 上开发了一个新的WordPress网站
(对不起,在域名中使用破折号而不是点,因为如果没有10分的信誉评分,我不能在这里发布超过2个链接。(
www olddomain com上的旧网站过早地通过DNS(@A记录,www记录(重定向到www newdomain com。因此,我无法访问宿主容器来在www olddomain com to 301上创建htaccess文件,从而将所有旧页面重定向到它们的新位置。我在www newdomain com下也有一个www olddomain com的停放域设置-这不是一个理想的情况,但我被卡住了:-(
两个域的url页面名称也完全不同。WordPress还将网址www newdomain com存储在数据库中,并基本上对其进行硬编码。
Wordpress htaccess
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
问题:在上面的场景中,我如何在newdomain上的htaccess中创建301重定向?
如果我使用以下内容:
Redirect 301 /blog http://www.newdomain.com/articles
然后它开始工作,但之后我一点击www newdomain.com上的任何工作链接,我就会收到一个500内部服务器错误。
如果我使用以下内容:
Redirect 301 /blog /articles
然后它也可以工作,但它在地址栏中显示以下内容:olddomain com/articles而不是www newdomain.com/articles
我也有很多这样的:www olddomain com/blog/?cat=136如果我使用:
Redirect 301 /blog/ /articles
则它加载新域404页面,并且地址栏显示:http://olddomain-com/articles/?cat=136
我对这件事一无所知,除了最基本的东西之外,我对htaccess没有任何经验。任何建议都将不胜感激,谢谢!
首先,您需要确保将wordpress域配置更新为www-newdomain-com
(转到/wp-admin/options-general.php
进行更改(,否则它将重写到olddomain-com
的每个链接,并扰乱您的.htaccess
规则。
这就是为什么现在一切都指向olddomain-com
。