Windows 2008 R2 + IIS 7.5 Rewrite组件重写规则兼容方法

2023-08-09发布者:ylm大小: 下载:0

文件大小:

软件介绍

Windows 2008 R2默认只有64位的,但是内置了支持32位的功能,就是说几乎所有在32位下能正常运行的软件都能正常运行在Windows 2008 R2当中,故不必担心PHP 5.2.17这个版本支持或不支持了。另外,有点需要注意的,Windows 2008 R2下,IIS版本是7.5,添加是在服务器管理面板中的“角色”,非“功能”哦,这点在刚接触2008 R2会有找不到……

IIS7.0开始就变成模块化了,需要什么就安装什么,当然也包括ASP支持,咱们用来运行PHP就把CGI也勾上。到时安装PHP的时候,就不用安装FastCGI了,因为已经内置了,这是跟Windows 2003不同的。

直奔主题吧,我们在Windows 2003下使用Rewrite组件,一般都有对应的httpd.ini规则包,在Apache下,则对应有.htaccess规则包。网上有不少方法让我们使用IIS 7.5的ULR Rewrite模块来进行导入原来的规则,导入的规则会在网站根目录生成web.config文件,里面保存的是根据导入生成的新规则,由于种种原因,导入的规则语法未必会100%能让IIS 7.5这个重写模块识别,导致导入的规则运行时候发生各种提示,包括无法生效,HTTP 500内部错误等等。

那有没有办法直接使用原来Windows 2003的伪静态规则包呢,答案是肯定的,Windows 2008 R2做的兼容性更高,没有Windows 2003莫名其妙的向上向下箭头,权限是一次性配置到位的。

在Windows 2008 R2的IIS 7.5的站点面板中,有个“ISAPI筛选器”模块,这个就是Windows 2003加载Rewrite组件的地方,接下来,你应该明白怎样加载了吧,同样道理,在这里把Rewrite.dll作为运行文件,加载到ISAPI筛选器,拿KingCMS地方门户v2.2举例,ISAPI筛选器Rewrite.dll会自动读取旁边的httpd.ini规则包。

一般而言,没实操过的教程就到此结束了,但是在实际操作当中,这样加载了Rewrite组件,还是无法生效。其实,原因也很明确,因为Windows 2008 R2是64位的,我们直接用在Windows 2003的Rewrite组件是32位的,所以要找到IIS 7.5加载的Rewrite组件如何在设置为32位兼容模式,经过狂点式搜查,终于在应用池那里找到了设置:

image.png
发表评论(共0条评论)
请自觉遵守互联网相关政策法规,评论内容只代表网友观点,发表审核后显示!

版权声明:

1 本站所有资源(含游戏)均是软件作者、开发商投稿,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!

2 本站将不对任何资源负法律责任,所有资源请在下载后24小时内删除。

3 若有关在线投稿、无法下载等问题,请与本站客服人员联系。

4 如侵犯了您的版权、商标等,请立刻联系我们并具体说明情况后,本站将尽快处理删除,联系QQ:2499894784

返回顶部