迁移GoDaddy站点至AWS EC2后访问异常问题咨询
我确实碰到过不少朋友在做类似的GoDaddy到AWS WordPress迁移时遇到这种跳转异常的问题,结合你给出的配置和场景,大概率是这几个点出了问题,咱们一步步来排查解决:
可能的原因及对应解决方案
1. WordPress核心URL配置残留
WordPress会把站点的home和siteurl两个关键URL存在数据库的wp_options表里,哪怕你修改了wp-config.php,如果数据库里的旧配置没更新,或者没在配置文件里强制覆盖,就会导致跳转混乱。
- 先登录你的MySQL RDS实例,执行以下SQL查询,确认这两个值:
如果返回的是GoDaddy的域名或者旧IP,直接更新成你的弹性IP:SELECT option_name, option_value FROM wp_options WHERE option_name IN ('home', 'siteurl');UPDATE wp_options SET option_value = 'http://你的弹性IP地址' WHERE option_name IN ('home', 'siteurl'); - 更稳妥的方式是直接在
wp-config.php里强制设置这两个值,覆盖数据库配置:define('WP_HOME','http://你的弹性IP地址'); define('WP_SITEURL','http://你的弹性IP地址');
2. Nginx默认服务器配置的模糊匹配
你的Nginx配置里server_name _;是匹配所有未明确指定的请求,但这种模糊匹配可能导致WordPress的URL解析出现偏差。
- 建议把
server_name改成你的弹性IP,让Nginx明确匹配这个IP的请求:
修改完成后重启Nginx生效:server { listen 80; server_name 你的弹性IP地址; # 替换成实际的弹性IP root /var/www/example.com/public_html/; index index.php index.html; access_log /var/log/nginx/domain-access.log; error_log /var/log/nginx/domain-error.log; # 其他location配置保持不变... }sudo systemctl restart nginx
3. 浏览器或本地DNS缓存干扰
有时候本地浏览器缓存了旧的跳转记录,或者DNS缓存还指向GoDaddy的服务器,导致访问弹性IP时被错误跳转。
- 先清除浏览器缓存(快捷键
Ctrl+Shift+Delete),用隐私窗口访问试试。 - 也可以在终端用
curl -v http://你的弹性IP地址查看详细的请求响应,确认是服务器端返回的跳转,还是本地缓存导致的。
4. GoDaddy端的重定向残留设置
检查GoDaddy的域名管理后台,看看有没有设置过301/302重定向到旧站点,或者域名解析里有没有隐藏的跳转规则。如果有的话,先暂时关闭这些重定向,等AWS站点完全配置好再调整域名解析。
5. WordPress缓存插件/主题的旧缓存文件
如果原站点使用了缓存插件(比如WP Rocket、W3 Total Cache),迁移后这些插件生成的缓存文件可能还残留着旧的URL配置,导致跳转异常。
- 如果你能登录AWS上的WordPress后台,直接清空所有缓存插件的缓存。
- 也可以手动删除缓存目录的文件:
sudo rm -rf /var/www/example.com/public_html/wp-content/cache/*
内容的提问来源于stack exchange,提问作者Nikhil Das Nomula
相关产品推荐
相关产品推荐

