今天突发奇想,想让基于PHP语言编写的网站和采用ASP网站使用同一域名的不同子目录进行访问,即是所谓的“全能服务器”。通过网上查资料和探究之后,在Windows 7系统下配置出了iis7(7.5)+asp+php+Access+mysql+phpmyadmin的运行环境。下面是操作流程:

1、启用IIS

控制面板-程序-打开或关闭Windows功能

把“Internet信息服务”下面的内容选上,可以根据你的需要进行选择,其中“万维网服务”下的“应用程序开发功能”全选,然后点击“确定”,系统会自动完成配置。

2、安装PHP

从www.php.net上下载最新版或者旧版的php安装包,将PHP文件解压到一个目录下,目录地址为 "C:\php"  (可以根据你的需要选择存放目录,不过下面要是用到这个路径,请相应修改),复制C:\php目录下的所有dll文件到windows的系统文件夹里,即:C:\windows\system32

3、安装PHP Manager模块

到这里下载:http://phpmanager.codeplex.com/releases/view/69115,安装再重启IIS,会发现再面板上多了一个 php manager

4、配置php.ini

将C:\php\php.ini用记事本打开(推荐使用Notepad++)

修改php.ini 查找data.timezone  修改为date.timezone = “Asia/Shanghai”(这里必须改,不然会出警告)  。再找到Windows Extensions开启所需模块,如:php_curl.dll  php_mysql.dll   php_mysqli.dll  php_xmlrpc.dll   php_curl.dll   只要去掉前面的分号。修改extension_dir后面的为"C:\php\ext\"(如果你的路径不一样请根据实际修改),并把前面的分号去掉,保存就可以了。

然后回到IIS界面,双击PHPManager后,点击“Register new PHPVersion”,然后选择好c:\php\php-cgi.exe,就OK了。然后静悄悄的php.ini就会为适合IIS7.5的配置默认给你生成好了。

当然,想偷懒的话也可以,PHPManager提供了可视化的模块管理界面,只要直接去改就可以了。

201303311

是不是方便快捷呢?

当然,一定要注意Windows 7和Windows 2008系统里面严格的权限管理,记得给php.ini设置User的完全控制权限,除了这个之外其他有需要的也要修改。

注:最好在系统的path环境变量中加入php的路径    ;C:\php;C:\php\ext       (包括分号)

5、安装MySQL

这个很简单,上MySQL的官网下载安装包之后安装就是了。

6、phpmyadmin

这个到官网下载下来,解压到你需要的目录,比如默认网站的目录下,那就能用了。

7、ASP和ASP.NET注意

a.要给asp开启父目录功能,否则部分用到这个功能的程序会报错

b.asp.net要采用Classic .NET AppPool的经典管道模式,否则会报错

c.如果系统是64位的话,不支持Access数据库,解决方法是把IIS设置成32位运行,但可能会导致部分基于64位程序的DLL无法运行。

设置成在32位运行:在命令行窗口下执行下面命令

cscript C:\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1

恢复回在64位运行:在命令行窗口下执行下面命令

cscript C:\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0

8、其他问题

暂无(有问题请留言,根据大家遇到的问题在这里补充)