我在工作中使用WAMP开发这个WP站点,现在突然我们将其切换到Windows服务器(2003)上。从wp admin中的Permalinks设置页面可以看出,它仍然认为它仍在Apache上运行,因为它为我提供了.htaccess
而不是web.config
文件
因此,我尝试了在web上找到的所有修复程序,其中一些针对Windows/IIS上的WP的修复程序仍然存在.htaccess
修复,我不理解,因为IIS/Win不使用.htaccess
. 我找到了一个解决方案。htaccess似乎有PHP-ISAPI的先决条件,但对此不是很清楚,我也不知道如何安装它(对Windows服务器非常不熟悉)。我尝试过提供的解决方案web.config
, 也无济于事。据说有一个资源要删除\'/index.php\'
从条件if( ! got_url_rewrite ) { $prefix = \'/index.php\'; }
在里面wp-admin/options-permalink.php
, 那也没用。
如何更改WP以读取正确的/当前的服务器类型?只是为了让WP“在同一页上”。那么,有没有人可以给我其他建议index.php
超出URL?
SO网友:Rarst
WP具有全局$is_iis7
变量,通过以下代码填充:
$is_iis7 = $is_IIS && intval( substr( $_SERVER[\'SERVER_SOFTWARE\'], strpos( $_SERVER[\'SERVER_SOFTWARE\'], \'Microsoft-IIS/\' ) + 14 ) ) >= 7;
如果检测工作不正常,那么这一行很可能出了问题,例如服务器变量没有填入预期的信息。