从另一台服务器重定向的棘手的wordpress设置

时间:2012-04-30 05:06:54

标签: apache wordpress .htaccess mod-rewrite redirect

我可以使用一些建议来了解如何从我的本地登台服务器迁移到我的生产服务器。它是一个相当棘手的设置,在我尝试描述它的时候,我的裸露。

我的网站已设置好,并且在我的个人服务器上的暂存子域的根目录下运行良好。 暂存:staging.mydomain.com

本周晚些时候,我将把它移到Rackspace上的新生产服务器上,该服务器目前没有附加域(只是一个IP地址)。客户端将文件夹重定向到新的机架空间服务器。 http://www.clientsdomain.com/subfolder/ 这将是该网站所在的地方。但是,clientsdomain.com是世界上其他地方的不同服务器(不是机架空间)。他们会将流量重定向到新的机架空间服务器。

所以我的问题是: 我为wordpress设置的工作阶段是我的个人服务器子域的根。我应该如何在rackspace上进行设置?在IP地址的根目录?或者在子文件夹中模仿任何相对链接的域设置。

我问的原因是我认为我已正确安装......但是......

我继续尝试将站点移动到我的Rackspace服务器上的dev文件夹中。我的客户设置了一个开发网址

http://www.clientsdomain.com/dev/subfolder/

访问该网址的任何人都会被重定向到我的服务器(我的机架空间服务器只有一个IP地址)

网站前端使用绝对网址。但事情开始失败的地方是wp-admin。例如,如果我在“常规设置”页面上并单击“保存”。它保存数据,然后重定向到/ wp-admin / ...而不是/ dev / subfolder / wp-admin /。由于该文件夹不存在,因此会转到我的客户404页面。

另外,去 http://www.clientsdomain.com/dev/subfolder/wp-admin在客户端服务器404页面上结束,但是......

http://www.clientsdomain.com/dev/subfolder/wp-admin/(使用斜杠)正常工作。

我将网站从我的dev文件夹移动到Rackspace的方法是将我的服务器(staging.mydomain.com)上的wp-admin中的URL更改为 http://www.clientsdomain.com/dev/subfolder/

然后我保存了这些设置,下载了db和站点文件,并将文件和数据库上传到rackspace,并更改了wp-config文件以匹配rackspace db。

这是我目前的htaccess文件:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

我真的很感激这里的一些指导。应该在周二上线。

谢谢! 鱼

2 个答案:

答案 0 :(得分:0)

我最近在标准域名(www.domain.com)上安装了WordPress,但不得不将其移至另一个拥有子域名的域名(blog.newdomain.com)。我发现我遇到了非常类似的问题,特别是wp-admin重定向到以前不再存在的域名。

我遇到了一个方便的搜索和替换MySQL数据库的工具(可在http://interconnectit.com/124/search-and-replace-for-wordpress-databases/获得)并用新的blog.newdomain.com替换了原始www.domain.com的所有实例,它纠正了我的所有问题

我希望这些信息能为您提供帮助。

答案 1 :(得分:0)

通常是导致问题的选项表。执行

update wp_options set option_value = replace(option_value, 'old_url', 'new_url');

由于DB上的直接SQL应该可以解决问题(用正确的url替换old_url和new_url)。

另一条路径是在wp-config.php文件中定义这两个WP常量,它将覆盖站点URL的数据库设置:

define('WP_HOME','http://sitehomeurl');
define('WP_SITEURL','http://siteurl');

当然,在针对它运行SQL之前备份数据库的警告适用。