将wordpress站点从wamp服务器移动到mamp服务器

时间:2014-02-16 00:23:59

标签: php wordpress localhost wamp mamp

我一直在使用WAMP在PC上本地创建一个Wordpress站点,但现在已经开始在mac上工作,所以我使用MAMP作为我的开发服务器。

我已经从原始站点导出了我的数据库,并在我的mac上的phpmyadmin中创建了一个新数据库并导入了原始数据库。我还将所有文件复制到我的mac上的htdocs文件夹中,并更改了我的wp-config文件以匹配新设置。

然而,当我在浏览器中查看该网站时,我不断收到此错误“糟糕!Google Chrome无法连接到localhost”。

我已经仔细检查了我的wp-config文件,所有设置如DB Name,User,Password和Host都是正确的。

我注意到的一件事是当我输入浏览器时:

  http://localhost:8888/mysite the URL gets changed to 
http://localhost/mysite - Im not sure if this is part of the problem or not...

如果有人对如何解决问题有任何想法,将不胜感激!

1 个答案:

答案 0 :(得分:1)

是的,这就是问题所在。 Wordpress将站点URL存储在数据库中,因此如果域发生更改,您需要编辑它,否则它只会重定向到旧URL。使用phpmyadmin进入数据库并将siteurlhome(在wp_options中)更改为新URL,或在wp_config.php中使用以下配置选项

define('WP_HOME','http://localhost:8888/mysite');
define('WP_SITEURL','http://localhost:8888/mysite');

您也可以进入MAMP的设置并将apache端口从8888更改为80,这样您就不必在本地开发时指定端口。

如果内容中有链接/图像,您还需要将数据库中的链接从旧URL更改为新URL(因为wordpress绝对引用所有内容);可能有很多插件可以做到这一点,但你可以使用一个简单的替换:

# wordpress fully change domain name:
UPDATE wp_posts SET post_content = REPLACE(post_content,'old','new');
UPDATE wp_posts SET guid = REPLACE(guid,'old','new');
UPDATE wp_options SET option_value = 'new' WHERE option_name = 'siteurl' OR option_name = 'home';