对于大部分选择 WordPress 建站的站长来说,都会选择 linux 主机来建站,但是偶尔也会有少数的人在不知道情况的前提下,选择了 windows 主机,这无疑是一个错误的选择。那么,既然选择了 windows 主机,就应该解决大部分站长都想实现的 WordPress 伪静态问题。偶派网站长是这样实现的,希望对您有所帮助。
对于 windows 主机使用者来说,您找到 wordprcess 的后台> 设置 (Options) >> 固定链接 (Permalinks) 处。在这里,WordPress 提供了 6 个有关 url 链接形式的选项,前五个选项对于主机来说是支持的, 不需要特殊处理。在这里我讲解的是第六个选择,我提供的解决方法是通过自定义 404 错误页面设置来实现的,相对来说比较复杂,请耐心的根据步骤实现,尽量讲解的详细些。
1. 现在本地计算机建立一个 404.php 文件,建议使用专门的 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 错误页面自定义的,具体可以咨询空间商。找到选择项后,接下来的便是将刚上传的文件定义为 404 错误页面,其实并非定义网站的 404 错误,而是提供这种途径实现的 WordPress 伪静态。
3. 进入网站 WordPress 管理后台,设置 (Options)>> 固定链接 (Permalinks) 处,找到 「自定义结构」 。您可以参考以下的自定义格式,选择适合自己喜欢的类型。最普遍的一种便是/%post_id%.html ,这是以文章 id 号码为链接的形式,形式为/47.html 这种格式; 还有一种是/%postname%.html,这是以文章名称为链接的形式,出来的效果是/标题.html 这种形式的, 如果文章名称是中文的,则会自动转化为% 符号,若服务器支持不是很好的话,会不能访问有些服务器支持不太好,不能访问。建议使用第一种。
另附官方提供了如下一些自定义参数:
%year% 年份
%monthnum% 月份
%day% 日期
%hour% 小时
%minute% 分钟
%second% 秒
%category% 目录
%author% 作者
4. 这个方法往往会导致中文标签和一些相关地方的 tags 无法找到,解决的办法是替换如下代码,找到 /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']; |
替换为
好了,您可以很自豪的查看自己网站前台了,你会发现网站 url 确实实现了静态化,原来就是那么简单。 ( ⊙ o ⊙ ) 。您若是在配置中遇到不明白的地方,可以来询问我,一块共同进步。