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

Php 将wordpress站点从wamp服务器移动到mamp服务器,php,wordpress,localhost,wamp,mamp,Php,Wordpress,Localhost,Wamp,Mamp,我一直在使用WAMP在PC上本地开发Wordpress站点,但现在已经开始在mac上工作,所以我使用MAMP作为我的开发服务器 我已经从原始站点导出了我的数据库,并在mac上的phpmyadmin中创建了一个新的数据库,并导入了原始数据库。我还将所有文件复制到mac上htdocs的一个文件夹中,并更改了wp配置文件以匹配新设置 然而,当我在浏览器中查看该站点时,我不断收到这样一个错误:“哎呀!Google Chrome无法连接到localhost” 我已经仔细检查了我的wp配置文件,所有的设置,

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

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

然而,当我在浏览器中查看该站点时,我不断收到这样一个错误:“哎呀!Google Chrome无法连接到localhost”

我已经仔细检查了我的wp配置文件,所有的设置,如数据库名、用户、密码和主机都是正确的

但我确实注意到,当我在浏览器中键入时:

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

如果有人对如何解决这个问题有任何想法,我们将不胜感激

是的,这就是问题所在。Wordpress将站点url存储在数据库中,因此您需要对其进行编辑,如果域发生更改,则只会重定向到旧url。使用phpmyadmin进入数据库并将
siteurl
home
(在
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';

此外,根据您在wordpress网站上创建的项目,您可能还需要更改数据库中的URL,例如绝对图像和其他资源链接。@djthoms是的,如果其中有内容,则需要更改所有内容。我已经用一个可以在数据库上运行的小脚本更新了我的帖子,以更改对旧域的所有引用。谢谢!!这就解决了我遇到的问题:-)当我将网站上传到internet时,我是否需要再次进行相同的更改?是的,因为当您将其上传到internet上的服务器时,域将不是
localhost/mysite
;)。您需要使用上面的脚本将域更改为任何新域。