方法一:
IIS5,多IP下共存,IIS为192.168.0.1,apache为192.168.0.2 原文地址
c:InetpubAdminscripts
cscript adsutil.vbs set w3svc/disablesocketpooling true
该命令反馈如下disablesocketpooling : (BOOLEAN) True
重启IIS
InetpubAdminScripts>cscript adsutil.vbs set w3svc/disablesocketpooling true
由于 DisableSocketPooling 在 IIS 6.0 元数据库架构 (MBSchema.xml) 中被定义为有效属性,所以,您仍然可以使用 Adsutil.vbs 设置该属性,但这种设置不起作用。IIS 6.0 中的功能是新增的核心级别驱动程序 HTTP.sys 的一部分。要配置 HTTP.sys,您必须使用 Httpcfg.exe
方法二:配置Apache以支持PHP5:
LoadModule php5_module "D:/PHPServer/PHP5/php5apache2.dll"
AddType application/x-httpd-php .php
DirectoryIndex index.html index.php
PHPIniDir "D:/PHPServer/PHP5"
其中最重要的一条就是 PHPIniDir,用来指明php.ini文件所在位置,即PHP5的安装目录,注意所有目录的应该改为D:/PHPServer/PHP5这种格式,而非D:PHPServerPHP5,IIS的访问地址为http://192.168.0.1,Apache访问地址为http://192.168.0.2
方法三,通过Apache的虚拟主机把全部请求转发到IIS
或许你觉得上面的方法够彻底,不是100%的IIS环境,又或者你不喜欢把Apache的根目录和IIS共享,那么你可以试试这种方法。
1.首先停止Apache;
2.编辑Apache的配置文件:apacheconfhttpd.conf 找到以下两项,把前面的注释符号 # 去掉使之加载Proxy模块
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
3.继续编辑 httpd.conf 在文件最后加入以下内容:
ServerName xwjie.iis
ProxyPass / http://127.0.0.1:84/
ProxyPassReverse / http://127.0.0.1:84/
这里也解释一下,第一行是你要绑定的主机的名字,如果是本地测试可以随便输入然后通过下面第6步的改host文件。如果是实际产品环境可以直接写域名如: ServerName www.xwjie.com 然后修改 www.xwjie.com 的DNS指向本机的IP。
4.启动Apache
5.在IIS新建站点,绑定84端口,网站根目录随意
6.因为这里绑定的主机名xwjie.iis是不存在的,所以我们要改Host把它指向127.0.0.1。打开C:WindowsSystem32driversetc目录下的“host”文件,加入一行:127.0.0.1 xwjie.iis
7.好了,现在可以打开你的浏览器,访问http://xwjie.iis/看看吧
以上介绍了两种让Apache和IIS在80端口和平共处的方法,如果你还有更好的方法