• 欢迎访问网站,WordPress信息,WordPress教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入
  • Git主题现已支持滚动公告栏功能,兼容其他浏览器,看到的就是咯,在后台最新消息那里用li标签添加即可。
  • 最新版Git主题已支持说说碎语功能,可像添加文章一样直接添加说说,新建说说页面即可,最后重新保存固定连接,演示地址
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

利用404页去除WordPress固定链接的“index.php”

Wordpress 爱飞的鱼 10年前 (2014-01-09) 2124次浏览 已收录

wp404

这是一个正确设置后,没有“index.php”的固定链接设置页面

许多利用 Windows 搭建 WordPress 网站的用户会发现这样一个问题:在固定链接设置(wp-admin/options-permalink.php)的页面中,如果使用的是非默认固定链接,会被强制加上一个 index.php。为了网站的美观和 SEO 优化的效果,建议大家移除 index.php,并且方法将在下文提供。

如果网站支持UrlRewrite

新建一个 httpd.ini 或者在原有的 httpd.ini 中加入:

[ISAPI_Rewrite]
RewriteRule ^/$ /index.php [L]
RewriteRule /(.*) /index.php/$1 [L]

保存后,上传至 WordPress 程序所在的根目录,即可。

如果网站不支持UrlRewrite

这种情况处理起来会比起前面一种复杂一些,还需要能够自定义404错误页面

新建一个 php 文件,文件名可以任意,比如404.php。在其中加入如下的代码:

<?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');
?>

保存后,上传至 WordPress 程序所在的根目录,将自定义的404错误页面设置成为你保存的文件名,比如404.php。


023 源码网 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:利用 404 页去除 WordPress 固定链接的“index.php”
喜欢 (0)
[]
分享 (0)