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

本地环境中$_GET["page"]变量失效,生产环境正常的问题排查

问题解决思路与步骤

核心问题是本地环境未启用URL重写规则,导致URL路径无法自动转换为page GET参数,以下是具体排查和修复步骤:

  • 检查Apache的mod_rewrite模块是否开启
    打开本地服务器的httpd.conf配置文件(比如XAMPP/WAMP的apache/conf/httpd.conf),找到#LoadModule rewrite_module modules/mod_rewrite.so这一行,去掉开头的#注释符号,保存后重启Apache服务。

  • 允许站点目录使用.htaccess覆盖配置
    在httpd.conf或虚拟主机配置文件中,找到对应本地站点的<Directory>块,将AllowOverride None修改为AllowOverride All,示例配置:

    <Directory "你的本地站点根目录路径">
        AllowOverride All
        Require all granted
    </Directory>
    

    修改后重启服务器生效。

  • 同步生产环境的.htaccess规则
    将生产环境根目录的.htaccess文件完整复制到本地站点根目录,常见的重写规则示例如下(以生产环境实际规则为准):

    RewriteEngine On
    # 排除实际存在的文件和目录
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    # 将路径转换为page参数
    RewriteRule ^(.*)$ index.php?page=$1 [L]
    
  • 验证重写效果
    访问本地站点的/by-laws路径,打印$_GET数组(比如添加var_dump($_GET);到代码中),确认page参数是否已正确生成。

  • 若使用Nginx作为本地服务器
    需将Apache的.htaccess规则转换为Nginx的rewrite配置,添加到站点的server块中:

    location / {
        try_files $uri $uri/ /index.php?page=$uri;
    }
    

    修改后重启Nginx服务。

内容的提问来源于stack exchange,提问作者Carpela

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 21:05:25