Windows主机(服务器)伪静态去除index.php方法

首页 论坛 服务器 Windows主机(服务器)伪静态去除index.php方法

  • 该话题包含 0个回复,1 人参与,最后由ray1980 更新于 3年前
正在查看 1 个帖子:1-1 (共 1 个帖子)
  • 作者
    帖子
  • #81
    ray1980
    管理员

    win主机的wordpress用户可能会相当头痛静态化的问题,如果服务器没有

    安装类似rewrite的组件的话,静态化将会相当的麻烦。不过呢,下面这段

    代码为我们提供了另外一种简单的方式来实现静态化。

    <?php
    header("HTTP/1.1 200 OK");
    $ori_qs = $_SERVER['QUERY_STRING'];
    $pattern = '/[^;]+;[^:]+:\/\/[^\/]+(\/[^\?]*)(?:\?(.*))?/i';
    
    preg_match($pattern, $ori_qs, $matches);
    $_SERVER['PATH_INFO'] = $matches[1] . '?' . $matches[2];
    $_SERVER['REQUEST_URI'] = $_SERVER['PATH_INFO'];
    $query_args = explode('&', $matches[2]);
    unset($_GET);
    foreach ($query_args as $arg)
    {
      $the_arg = explode('=', $arg);
      $_GET[$the_arg[0]] = $the_arg[1];
    }
    include('index.php');
    ?>
    

    设置固定链接(Permalink)伪静态步骤:

    1. 将以上代码保存为 404.php,并上传至主机根目录。

    2. 设置 404 自定义错误页为 404.php。

    3. 进入 WordPress 控制面板,设置(Options)- 固定链接(Permalinks),选择固定链接格式。

正在查看 1 个帖子:1-1 (共 1 个帖子)
  • 哎呀,回复话题必需登录。