如何将wordpress从一个域复制到另一个域?

时间:2017-11-20 19:45:35

标签: wordpress dns cpanel

我有一个进入Cpanel的客户端,我将其复制并将其从wordpress文件夹domain1.cl粘贴到domino2.cl。什么wp文件是网站指向新域的URL?  *注意:客户端已经配置了新的DNS,只有重定向在Wordpress中失败。解决这个问题的最佳方法是什么?

2 个答案:

答案 0 :(得分:0)

请参阅下面的攻击bash代码。例如,将其另存为update-wordpress-domain.sh,然后对其执行 chmod + x 。请编辑/更改/修改运行它的脚本中的db名称,db用户和密码。它将要求旧域,然后是新域。然后它将进行必要的更改:

#!/bin/bash

SQL_USER="db-user"
SQL_PASS="db-password"
SQL_DB="db-name"

echo -e "Enter old domain: \c"
read OLD_DOMAIN
echo -e "Enter new domain: \c"
read NEW_DOMAIN

if [ -z "$OLD_DOMAIN" ] || [ -z "$NEW_DOMAIN" ]; then
    echo "old url and/or new url are empty. please define them!"
    exit 1
fi

# Save a mysqldump first!
DATE=`date -I`

mysqldump --opt -u $SQL_USER -p$SQL_PASS $SQL_DB > $SQL_DB.$DATE.sql

echo "Updating the database"

mysql -u $SQL_USER -p$SQL_PASS $SQL_DB -e "UPDATE wp_options SET option_value = replace(option_value, 'http://$OLD_DOMAIN', 'http://$NEW_DOMAIN') WHERE option_name = 'home' OR option_name = 'siteurl';"
mysql -u $SQL_USER -p$SQL_PASS $SQL_DB -e "UPDATE wp_posts SET guid = replace(guid, 'http://$OLD_DOMAIN','http://$NEW_DOMAIN');"
mysql -u $SQL_USER -p$SQL_PASS $SQL_DB -e "UPDATE wp_posts SET post_content = replace(post_content, 'http://$OLD_DOMAIN', 'http://$NEW_DOMAIN');"
mysql -u $SQL_USER -p$SQL_PASS $SQL_DB -e "UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://$OLD_DOMAIN','http://$NEW_DOMAIN');"
echo ""
echo "Done!"

然后将其作为./update-wordpress-domain.sh

运行

请记住,脚本必须在数据库实际所在的服务器上通过SSH本地运行!

在实际更改当前数据库中的任何内容之前,脚本将首先创建一个mysql数据库转储。

答案 1 :(得分:0)

谢谢!但我发现wp中的插件一体机,这解决了我的所有问题,我唯一要做的就是将BD更改为新域并更改用户和密码。