WordPress迁移后丢失wp-json目录的解决方法

来自:素雅营销研究院

头像 方知笔记
2025年04月04日 05:34

问题现象

许多用户在将WordPress网站迁移到新服务器或新主机后,发现wp-json目录无法访问,导致REST API功能失效。这个问题通常表现为访问yoursite.com/wp-json时返回404错误,或者显示”此页面不存在”的提示。

问题原因

wp-json目录丢失通常由以下几个原因导致:

  1. 固定链接未重置:迁移后未重新保存固定链接设置
  2. .htaccess文件权限问题:新服务器上的.htaccess文件未正确配置
  3. mod_rewrite模块未启用:Apache服务器未启用URL重写功能
  4. 插件冲突:某些安全插件可能阻止了API访问
  5. Nginx配置问题:使用Nginx服务器时未正确配置重写规则

解决方案

方法一:重置固定链接

  1. 登录WordPress后台
  2. 进入”设置”→”固定链接”
  3. 直接点击”保存更改”按钮(无需修改任何设置)
  4. 清除网站缓存(如果有使用缓存插件)

方法二:检查.htaccess文件

  1. 通过FTP或文件管理器访问网站根目录
  2. 确保存在.htaccess文件且内容包含WordPress重写规则
  3. 如果不存在,可手动创建并添加以下代码:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
  1. 设置文件权限为644

方法三:检查服务器配置

对于Apache服务器

  1. 确保mod_rewrite模块已启用
  2. 检查httpd.conf或apache2.conf中AllowOverride是否设置为All

对于Nginx服务器

  1. 在服务器配置中添加以下规则:
location / {
try_files $uri $uri/ /index.php?$args;
}

方法四:禁用插件排查

  1. 暂时禁用所有插件
  2. 检查wp-json是否恢复
  3. 逐个启用插件,找出导致问题的插件

预防措施

  1. 迁移前备份完整的网站文件和数据库
  2. 迁移后立即检查核心功能是否正常
  3. 使用专业迁移插件如”All-in-One WP Migration”或”Duplicator”
  4. 测试REST API功能是否正常

通过以上方法,大多数情况下可以解决WordPress迁移后wp-json目录丢失的问题。如果问题仍然存在,建议联系主机提供商或WordPress开发专家寻求进一步帮助。