Windows虚拟主机支持wordpress永久链接伪静态

在windows虚拟主机下面,因为win主机的IIS不支持htaccess,永久链接里面有一个index.php,看起来非常不好看。

让windows虚拟主机支持wordpress永久链接伪静态,需要使用虚拟主机的自定义404页面的功能。

把下面代码存成404.php,并上传到网站根目录

<?php
if (strpos($_SERVER["SERVER_SOFTWARE"], "Apache") === 0){
 // Apache
 // REQUEST_URI形如"/non-exist-page.html"
 $uri = $_SERVER['REQUEST_URI'];
}
else{
 // IIS
 // $_SERVER['QUERY_STRING']形如"404;http://localhost/non-exist-page.html"
 $qstr = $_SERVER['QUERY_STRING'];
 $_SERVER['QUERY_STRING'] = "";
 $pos = strrpos($qstr, '://');
 $pos = strpos($qstr, '/', $pos + 4);
 $uri = substr($qstr, $pos);
}
$_SERVER['REQUEST_URI'] = $uri;
$_SERVER['PATH_INFO'] = $_SERVER['REQUEST_URI'];
// 解决重定向的页面中的页面导航问题
$_SERVER['SCRIPT_NAME'] = $_SERVER['PATH_INFO'];
include('./index.php');
?>

进WIN主机后台设置404错误页设为指向所有目录的404.php,然后进WP后台设置永久链接。

这样做,虽然wordpress永久链接伪静态设置成功了,但是对SEO并没有效果。所以,win主机下面的wordpress永久链接设置,推荐使用默认的链接格式。

wordpress是用php写的,买主机,推荐使用linux主机,对wordpress的支持非常好。

windows主机转移到linux主机之后,需要手动添加一个htaccess文件

2 thoughts on “Windows虚拟主机支持wordpress永久链接伪静态

发表评论

电子邮件地址不会被公开。 必填项已用*标注