Win2003+IIS6 配置WordPress伪静态详细步骤
今天服务器重装系统,又搞了一遍伪静态配置,按照ISAPI Rewrite3这个最常见的插件配置。步骤1. 下载ISAPI Rewrite3,下载地址。远程登录服务器,把插件上传到服务器桌面,双击开始安装,期间一路点下一步,安装到默认目录即可。在我的服务器上默认安装目录为C:\Program Files\Helicon步骤2. 打开IIS窗口,右键点击网站-打开属性-ISAPI筛选器,看到已自动添加的IISAPI Rewrite3筛选器,点删除步骤3. 右键点击需要配置伪静态的WordPress网站,打开属性-ISAPI筛选器,点添加。在弹出的窗口中命名ISAPI_Rewrite3;可执行文件就选安装目录下的ISAPI_Rewrite.dll。添加完毕就是这样的,刚添加完毕优先级应该是未知:点确定保存步骤4. 回到第二部的全局网站,右键属性-IISAPI Rewrite选项卡(插件安装完毕后会多出来这个选项卡),点Edit,把以下内容复制进去然后保存:RewriteEngine OnRewriteCompatibility2 On
RepeatLimit 32
RewriteBase
# unsupported directive:
#3600 = 1 hour
# unsupported directive: CacheClockRate 3600
#Protect httpd.ini and httpd.parse.errors files
#from accessing through HTTP
#Rules to ensure that normal content gets through
RewriteRule ^/robots.txt /robots.txt
RewriteRule ^/sitemap.xml$ /sitemap.xml
RewriteRule ^/favicon.ico$ /favicon.ico
#For file-based wordpress content (i.e. theme), admin, etc.
RewriteRule ^/wp-(.*)$ /wp-$1
#For normal wordpress content, via index.php
RewriteRule ^/$ /index.php
RewriteRule ^/(.*)$ /index.php/$1
# For tags
RewriteRule ^/tag/(.*) /index.php/?tag=$1
步骤5. 检查一下IIS的web服务扩展里面,IISAPI Rewrite是否为允许,如不是就设置为允许步骤6. 资源管理器中打开C:\Program Files\Helicon(也就是安装目录),右键点文件夹ISAPI_Rewrite3,点安全选项卡,给这个文件夹添加everybody用户的读取权限,注意只要读取权限即可,其他都不勾选点确定保存步骤7. 重启一下IIS服务,cmd命令行命令:iisreset /restart步骤8. 文本编辑软件打开wp-includes/class-wp.php
查找代码$pathinfo = isset( $_SERVER['PATH_INFO'] ) ? $_SERVER['PATH_INFO'] : '';改成$pathinfo = mb_convert_encoding($_SERVER['PATH_INFO'], "UTF-8", "GBK");查找代码list( $req_uri ) = explode( '?', $_SERVER['REQUEST_URI'] );改成list( $req_uri ) = mb_convert_encoding($_SERVER['REQUEST_URI'], "UTF-8", "GBK");如果不做这一步,win主机上中文伪静态是无法实现的。步骤9. 打开主题的function.php,添加如下代码:function redirect_search() {
if (is_search() && !empty($_GET['s'])) {
$keywords=mb_convert_encoding( get_query_var('s'), "UTF-8", "GBK" );
$keywords=urlencode( $keywords );
wp_redirect(home_url("/search/").$keywords);
exit();
}
}
add_action('template_redirect', 'redirect_search' );这一步是为给站内搜索添加跳转功能,并且让它在win主机下能支持中文。步骤10. 进入WordPress后台,配置伪静态,最后保存设置。至此大功告成。步骤2,3,5,8,9是我踩过的坑,如果配置不成功多半是其中哪一部没做完整,另外配置完成后要重启IIS。
页:
[1]