wordpress如何实现伪静态

时间:2012-07-11 15:37      来源:未知      作者:CNAAA      点击:

一、linux主机较简单,安装好程序到后台设置》固定链接》直接进行设置就可支持。

对于windows主机,在wordprcess的后台>设置(Options)》固定链接(Permalinks),一共有5个选项,前四个选项直接选择就支持的,不需要特殊处理。
第五个选择是通过404错误设置,相对复杂,这里我们主要说明。

具体设置步骤:
1.新建一个记事本,在里面写入下面代码保存,连同txt格式重新命名为404.php。上传到网站根目录。

代码:
<?php
$qs = $_SERVER['QUERY_STRING'];
$_SERVER['REQUEST_URI'] = substr($qs, strpos($qs, ':80')+3);
$_SERVER['PATH_INFO'] = $_SERVER['REQUEST_URI'];
include('index.php');
?>
2. 登录我司网站后台管理--主机管--管理,点管理进去,点自定义错误页面--开启404.php错误页面

3.进入wordpress管理后台,设置(Options)》固定链接(Permalinks),一共有5个选项,前四个选项直接选择就支持的。我们说的是自定义结构设置。常用的设置有/%post_id%.html ,出来是网页/47.html这种格式的;还有一种是/%postname%.html,这种出来是/标题.html格式的,如果标题是中文会转码成%符号那种,有些服务器支持不太好,不能访问。建议用户用第一种自定义,好看而且更容易收录。

另附官方提供了如下一些自定义参数:
%year% 年份
%monthnum% 月份
%day% 日期
%hour% 小时
%minute% 分钟
%second% 秒
%postname% 文章名。在发表文章的时候,输入文章缩略名“This Is A Great Post!”那么 “this-is-a-great-post” 就是url中的文章名.
%post_id% 文章的ID
%category% 目录
%author% 作者

二。这个方法会导致中文标签和一些相关地方的tags无法找到,解决办法是查找wp-include/classes.php  或 /wp-includes/class-wp.php中如下代码:


 
if ( isset($_SERVER['PATH_INFO']) )
$pathinfo = $_SERVER['PATH_INFO'];
else
$pathinfo = '';
$pathinfo_array = explode('?', $pathinfo);
$pathinfo = str_replace("%", "%25", $pathinfo_array[0]);
$req_uri = $_SERVER['REQUEST_URI'];

修改为:


 
if ( isset($_SERVER['PATH_INFO']) )
$pathinfo = mb_convert_encoding($_SERVER['PATH_INFO'], 'utf-8', 'GBK');
else
$pathinfo =;
$pathinfo_array = explode('?', $pathinfo);
$pathinfo = str_replace("%", "%25", $pathinfo_array[0]);
$req_uri = mb_convert_encoding($_SERVER['REQUEST_URI'], 'utf-8', 'GBK');

----------------------

 

三。WordPress换域名的完美301跳转方法

假设你的主机上绑定的有www.abc.com ,abc.com,abc.gotoip4.com 三个域名,你想输入 abc.com 或abc.gotoip4.com的时候,自动跳转到主域名:www.abc.com


修改 wordpress 根目录下的 wp-blog-header.php ,并在文件开头 <?php 之后加入以下代码:


if (strtolower($_SERVER['SERVER_NAME'])!='3个W.abc.com')
{
$URIRedirect=$_SERVER['REQUEST_URI'];
if(strtolower($URIRedirect)=="/index.php")
{
$URIRedirect="/";
}
header('HTTP/1.1 301 Moved Permanently');
header('Location:http://3个W.abc.com'.$URIRedirect);
exit();
}

注意:把上面程序里面的两个 '3个W.abc.com' 修改成你自己的域名

四。wordpress使用404页面实现永久连接的分页问题及解决方法
2.8到3.0版本的修改wp-setting.php文件
3.1版本的修改文件 wp-includes\load.php
把上面if ( empty( $_SERVER['REQUEST_URI'] ) || ( php_sapi_name() != 'cgi-fcgi' && preg_match( '/^Microsoft-IIS\//', $_SERVER['SERVER_SOFTWARE'] ) ) )
改成if ( empty( $_SERVER['REQUEST_URI'] ) )就对了

 

五。标签云中文分页不能访问问题。

解决wp-pagenav分页插件,不支持中文Tags分页问题。解决思路就是让UTF-8编码的Tags转换成GBK输出,不转成GB2312的原因,在于GB2312是简体中文编码,不支持繁体中文。如果Tags是繁体,照样出乱码而无法打开。
1、备份你的wp-pagenav分页插件,形成良好的备份习惯。这里只需要对wp-pagenavi.php文件操作,如果你懒干脆只备份此文件。
2、用FTP软件,二进制方式下载\wp-content\plugins\wp-pagenavi\wp-pagenavi.php文件到本地,使用Editplus或Dreamweaver打开文件。找到第170行,代码如下:
return "<a href='" . esc_url(get_pagenum_link($page)) . "' class='$class'>$text</a>";
3、在此句前加“#”,或用“/**/”把词句包含,注释掉此段代码。另起一行,加入如下代码:return "<a href='" . esc_url(mb_convert_encoding(get_pagenum_link($page), "UTF-8", "GBK")) . "' class='$class'>$text</a>";
4.保存文件,并上传到服务器,测试你的Tags分页是否可用。
 

上一篇:常用程序伪静态规则下载

下一篇:网站上传向导

企业资质 | 联系我们 | 关于我们 | 机房展示 | 如何缴费 | 代理合作 | 网站地图 | 人才招聘 | 备案教程 | 帮助中心 | 独立控制面板 |  | 


 荣誉证书     经营许可     苏ISP证B2-20100262
3A网络提供:虚拟主机网站空间美国空间香港主机合租空间域名注册韩国空间服务器租用托管
销售电话:400-996-3389
公司地址:江苏省靖江市城北园区山南路18号科技创业大厦6楼 邮编:214500
《中华人民共和国电信与信息服务业务经营许可证》 苏ISP证B2-20100262 企业法人营业执照
国家信息产业部网站备案 苏ICP证备09073606号  Copyright(c) 2005-2010 江苏三艾网络科技有限公司 版权所有
请直接将客服添加为您的QQ好友。IDC客服企业QQ: 号码:800020168 客服工作时间(8:30-23:00) 90106(意见建议) 60813(渠道合作)