现在的位置: 首页 > wordpress优化 > 正文

wordpress固定链接如何去除index.php

2013年01月05日 wordpress优化 ⁄ 共 1580字 ⁄ 字号 评论 12 条 ⁄ 阅读 1 次

黑雨以前发布过一篇关于 wordpress固定链接设置的文章,最近有个网友在seo博客里留言问,wordpress固定链接如何去除index.php

今天黑雨就分享wordpress固定链接去除index.php的方法:

1、如果网站支持UrlRewrite(伪静态)

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

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

(2)对于linx主机代码为

[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
# Rules to ensure that normal content gets through
RewriteRule /sitemap.xml /sitemap.xml [L]
RewriteRule /favicon.ico /favicon.ico [L]
# For file-based wordpress content (i.e. theme), admin, etc.
RewriteRule /wp-(.*) /wp-$1 [L]
# For normal wordpress content, via index.php
RewriteRule ^/$ /index.php [L]
RewriteRule /(.*) /index.php/$1 [L]

2、如果网站不支持UrlRewrite(伪静态)

这种情况处理起来会比起前面一种复杂一些,还需要能够自定义404错误页面。(相关文章:dede的404页面设置

新建一个php文件,文件名可以任意,比如wp-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错误页面设置成为你保存的文件名,比如wp-404.php。

将wp-404.php上传到网站根目录或者根目录下的其他文件夹。

如果上传到根目录,那么文件结构为:根目录/wp-404.php
如果上产到根目录下的其他文件夹,那么格式为:根目录/xxx/wp-404.php
我上传到了根目录。

接下来最关键的步骤:
登录到你的主机管理面板,然后在自定义错误页面中把404页面错误自定义连接为wp-404.php的相对路径:
/wp-404.php (如果你将文件上传到根目录下选这个)
或者:
/xxx/wp-404.php (如果你将文件上传到根目录下的xxx文件夹下,选这个)

wordpress固定链接设置时博客建成前期,wordpress优化比较重要的部分,而且一定要一次设置好,没有必要就不要再次修改。

猜你喜欢

目前有 12 条留言    访客:10 条, 博主:2 条

  1. 参茸鞭丸 2013年01月07日 上午5:55  @回复  Δ-49楼 回复

    这个得学习一下了 呵呵 不错呀

  2. 互动seo 2013年01月08日 上午5:11  @回复  Δ-48楼 回复

    黑雨兄,学习了啊

  3. 精油 2013年01月09日 上午2:51  @回复  Δ-47楼 回复

    我的丰胸站也是wordpress,来学习了

  4. 东革阿里 2013年01月09日 上午7:57  @回复  Δ-46楼 回复

    php程序安全是安全,就是移动站嫌麻烦,不像access数据库,整站上次就可以了,mysql麻烦

  5. 充气娃娃 2013年01月11日 上午4:16  @回复  Δ-45楼 回复

    恩。。。。我刚好遇到这个问题呢!呵呵。。。太谢谢你冷!

  6. 聊天室排行榜 2013年01月12日 上午5:27  @回复  Δ-44楼 回复

    直接设置主机默认开头啊


    • 管理员
      黑雨 2013年01月14日 上午7:01  @回复  ∇地下1层 回复

      你说的是 vps,自己有自己服务器的吧,我这个说的虚拟空间

  7. yinenhui 2013年01月12日 上午10:45  @回复  Δ-43楼 回复

    好东西,先收藏了、过几天也做个博客

  8. 国际VPN 2013年01月12日 上午11:15  @回复  Δ-42楼 回复

    还真没注意有这个技巧,一会测试一下,谢谢分享了!

  9. 李湘 2013年01月12日 下午4:24  @回复  Δ-41楼 回复

    你好,我的网站的二级目录设置自定义链接后文章打不开?前面的一级主站是可以设置自定义链接的啊?有解决的方法吗?


    • 管理员
      黑雨 2013年01月15日 上午6:56  @回复  ∇地下1层 回复

      文章重新生成了吗?

  10. 最具性价比的网络推广 2013年01月16日 上午8:33  @回复  Δ-40楼 回复

    有道理 支持下

给我留言

留言无头像?