You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

迁移WordPress主机后PHP $_GET无法读取URL参数求助

解决WordPress主机迁移后$_GET无法获取URL参数的问题

排查步骤:

  • 检查固定链接与重写规则
    新主机的URL重写配置可能未正确设置,导致GET参数丢失:

    1. 进入WordPress后台→设置→固定链接,先切换为「朴素」格式并保存,再切回原自定义格式保存,触发重写规则更新。
    2. 若使用Apache,检查根目录.htaccess文件是否存在且包含WordPress默认重写规则(权限设为644):
      # 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
      
    3. 若使用Nginx,确认站点配置中包含传递GET参数的规则:
      location / {
          try_files $uri $uri/ /index.php?$args;
      }
      
  • 验证服务器QUERY_STRING与PHP配置
    先确认服务器是否接收到参数,再检查PHP配置:

    1. 临时添加代码查看原始查询字符串:
      echo '<BR>QUERY_STRING: ' . $_SERVER['QUERY_STRING'];
      
      若有内容但$_GET为空,说明PHP未正确填充$_GET变量。
    2. 检查PHP的variables_order配置,需包含G(GET):
      echo '<BR>variables_order: ' . ini_get('variables_order');
      
      正常应为GPCS,若缺失G,需修改php.ini或通过主机面板调整配置。
  • 排查主题与插件冲突
    部分主题或插件可能修改/重置了$_GET变量:

    1. 切换到WordPress默认主题(如Twenty Twenty-Four),测试是否恢复正常。
    2. 禁用所有插件,逐一启用排查,定位导致问题的插件。
  • 确认URL参数格式
    确保URL参数符合标准格式(如https://your-site.com/page?key1=value1&key2=value2),避免特殊字符未编码、多个?符号等格式错误。


内容的提问来源于stack exchange,提问作者Kyle Ford-Tyssen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 05:33:28