会员登录 还没有账号? 立即注册

WordPress网站定制开发专家
成为WPYOU会员, 享受更多专属优惠吧!

成为WPYOU联盟推广代理,获取高比例的推广佣金分成

立即加入

WordPress用404做伪静态翻页时出错(Windows主机)的解决方法

WPYOU介绍过不少WordPress在Windows主机环境下实现伪静态的方法,但由于不同主机商提供的主机组件环境不同,从而导致实现方法也不尽相同。这里再为Windows主机用户介绍一种通过自定义Windows主机的404页面的方法来去除固定WordPress网站固定连接中的index.php。

当WordPress 升级新版后,忽然发现翻页不能的问题。就是打开首页,鼠标指向翻页链接都是正常的,但是一旦点击分类页码或者标签页面等翻页功能时,发现页码链接打不开了。而这个 404 自定义造成的不能翻页问题,终于找到原因,以下为针对Windows主机写的404.php页面,问题解决。
404代码如下:

<!– WPYOU.com WordPress 404 Handler –>
<?php

// This is the default file for the site. Usually index.php
$default = ‘index.php’;

// The name of this file.
// Set this value for the URL in Custom Error Properties of your website in IIS.
// Goto: IIS Manager > Websites > [Site Name] > Properties > Custom Errors >
// 404 & 404;2 & 404;3 > URL (Requires a ‘/’ prefix in IIS).
$thisfile = ’404-handler.php’;

$_SERVER[‘ORIG_PATH_TRANSLATED’] =
str_replace($thisfile, $default, $_SERVER[‘ORIG_PATH_TRANSLATED’]);
$_SERVER[‘SCRIPT_FILENAME’] =
str_replace($thisfile, $default, $_SERVER[‘SCRIPT_FILENAME’]);
$_SERVER[‘ORIG_PATH_INFO’] =
str_replace($thisfile, $default, $_SERVER[‘ORIG_PATH_INFO’]);
$_SERVER[‘SCRIPT_NAME’] =
str_replace($thisfile, $default, $_SERVER[‘SCRIPT_NAME’]);
$_SERVER[‘PHP_SELF’] =
str_replace($thisfile, $default, $_SERVER[‘PHP_SELF’]);
$_SERVER[‘PATH_INFO’] = false;

$qs =& $_SERVER[‘QUERY_STRING’];
$ru =& $_SERVER[‘REQUEST_URI’];
$pos = strrpos($qs, ‘://’);
$pos = strpos($qs, ‘/’, $pos + 4);
$_SERVER[‘URL’] = $ru = substr($qs, $pos);
$qs = trim(stristr($ru, ‘?’), ‘?’);

// Required for WordPress 2.8+
$_SERVER[‘HTTP_X_ORIGINAL_URL’] = $ru;

// Fix GET vars
foreach ( $_GET as $var => $val ) {
if ( substr($var, 0, 3) == ’404′) {
if ( strstr($var, ‘?’) ) {
$newvar = substr($var, strpos($var, ‘?’) + 1);
$_GET[$newvar] = $val;
}
unset($_GET[$var]);
}
break;
}
include($default);
?>

具体操作设置步骤:
1. 新建一个记事本,在里面写入上面代码,保存(文件格式请务必保存为 utf-8),连同txt格式重新命名为wp-404-handler.php。
2. 上传该文件到服务器根目录,在主机面板管理里,自定义错误页面中,设置404自定义错误指向wp-404-handler.php。
3. 进入wordpress管理后台,设置(Options)-永久链接(Permalinks),你可以任意设置静态地址后缀。

下载完整文件包wp-404-handler.php (下载解压后可直接使用)

在线留言

你必须 才能评论!

在线客服

点击这里给我发消息 定制开发 购买主题 售前咨询 售后服务
返回顶部