...
分类: LINUX
2010-03-22 17:26:19
1、预安装好windows 2003 打好sp2以上补丁 安装好IIS6.0 并选择asp和.net支持。IIS默认支持asp.net 1.1 asp.net 2.0可以在网上下载。
2、安装php、mysql及mssql。
解压缩 PHP 二进制压缩包到 C:\php 目录下(这里假设 C: 盘是系统盘,即安装了Windows 系统的盘,如果系统盘是 D: 盘,则解压缩到 D:\php 目录下,以此类推,下同)。
然后打开“我的电脑”->“属性”->“高级”->“环境变量”->“系统变量”->“path”,编辑其值,在前面增加下面的路径地址:
C:\php;C:\php\dlls;C:\php\extensions;C:\php\sapi;
将 php.ini-dist 或 php.ini-recommended 复制到 C:\Windows 目录下,并改名为 php.ini,一般正式发布网站的服务器用 php.ini-dist,而作为调试用的服务器用 php.ini-recommended 更好。当然一般情况下,这个 php.ini 还是需要根据实际情况来修改的。
下面来介绍一下几个必要的修改选项:
extension_dir = "C:\php\extensions"
这个是 PHP 扩展所放置的目录,请确保跟你实际安装的目录相同。
extension=php_mbstring.dll
;extension=php_big_int.dll
extension=php_bz2.dll
extension=php_cpdf.dll
extension=php_crack.dll
extension=php_curl.dll
extension=php_db.dll
extension=php_dba.dll
extension=php_dbase.dll
extension=php_dbx.dll
extension=php_domxml.dll
;extension=php_exif.dll
;extension=php_fdf.dll
;extension=php_filepro.dll
extension=php_gd2.dll
extension=php_gettext.dll
extension=php_hyperwave.dll
extension=php_iconv.dll
;extension=php_ifx.dll
;extension=php_iisfunc.dll
extension=php_imap.dll
;extension=php_interbase.dll
extension=php_java.dll
extension=php_ldap.dll
;extension=php_mcrypt.dll
extension=php_mhash.dll
extension=php_mime_magic.dll
extension=php_ming.dll
extension=php_mssql.dll
extension=php_msql.dll
;extension=php_oci8.dll
extension=php_openssl.dll
;extension=php_oracle.dll
extension=php_pdf.dll
extension=php_pgsql.dll
;extension=php_printer.dll
extension=php_shmop.dll
;extension=php_snmp.dll
extension=php_sockets.dll
;extension=php_sybase_ct.dll
extension=php_w32api.dll
extension=php_xmlrpc.dll
extension=php_xslt.dll
extension=php_yaz.dll
extension=php_zip.dll
上面这些,开头没有加分号的是打开的扩展,加了分号的是没有打开的扩展。上面的设置包含了在 Windows 2003 上默认安装情况下可以打开所有扩展(这里列出的是 php 4 的)。
session.save_path = c:\sessions
这个是 session 文件默认保存的目录,这个目录必须是一个存在的目录,不然默认的 session 功能会无效。我这里设置的是一个 ramdisk 上的一个目录。将 session.save_path 设置在 ramdisk 上可以加快 session 处理的速度。如果你没有安装 ramdisk,你可以把它指定到其他盘的任何一个目录下,如 C:\sessions 目录、C:\Windows\Temp 目录等。
OK,基本工作作完了,现在该配置 IIS 了。
打开“ Internet 信息服务(IIS) 管理器”,在“ Web 服务扩展”里,选择“添加一个新的 Web 服务扩展”,扩展名可填写“PHP ISAPI 扩展”,要求的文件选择:C:\php\sapi\php4isapi.dll(如果安装的是 PHP5,则此处是 C:\php\sapi\php5isapi.dll,下同),并设置扩展状态为允许。
打开“网站”->“属性”->“ISAPI 筛选器”->“添加”,筛选器名称可填写“PHP”,可执行文件仍然选择 C:\php\sapi\php4isapi.dll。
打开“网站”->“属性”->“主目录”->“应用程序设置”->“配置”->“应用程序扩展”->“添加”,可执行文件还是选择 C:\php\sapi\php4isapi.dll。扩展名填写“.php”,动作限制为“HEAD,GET,POST”。
打开“网站”->“属性”->“文档”->“启用默认内容文档”->“添加”,可以将 index.php 添加为默认内容文档。
然后选择“服务器机器名”->“所有任务”->“重新启动 IIS”来重启 IIS。
测试
在默认网站发布目录下,建立一个测试页面:
下载:phptest.php
phpinfo();
?>
如果打开这个页面能够看到 php 安装配置信息,就算是安装成功了。
如果想要更优化的执行 php 程序,可以安装 ZendOptimizer-2.6.0-Windows-i386.exe ,这个东西安装非常简单,这里就不介绍了。
升级
现在升级就非常简单了。只需要将新版本的 PHP 二进制压缩包下载下来,将原来的 C:\php 目录删除,将新版本解压缩到 C:\php 目录中,然后重新启动一下 IIS 就可以了。不需要修改任何配置,也不需要往 System32 目录中复制任何文件。
。重点讲jsp的环境搭配。
3.1、安装JAVA 2 SDK
我装在D:\JDK目录下。
接下来设置环境变量,这一步很重要,别忘了:
JAVA_HOME = D:\JDK
CLASSPATH = D:\JDK\LIB\tools.jar;D:\JDK\LIB\dt.jar
Path 追加D:\JDK;D:\JDK\bin
3.2、安装jsp/Servlets运行平台[我装的是RESIN3.1.1,不是RESIN PRO3.1.1哦]
解压缩到D:\resin目录
设置Resin的环境变量。
RESIN_HOME = D:\resin
运行D:\resin\bin\httpd.exe -install 将resin安装到系统服务中。
复制我精简过的resin.conf内容到D:\resin\conf\resin.conf里
三、将Resin挂接进IIS
按步骤进行:
在D盘建立D:\wwwroot\jspsite目录。这个就是jsp网站的主目录。
然后在目录下创建一个测试用的test.jsp文件。
输入以下内容:
接着,在D盘建立D:\wwwroot\scripts目录。
把D:\resin\libexec目录下的isapi_srun.dll复制到D:\wwwroot\scripts目录下。
并将目录权限设置成everyone的读取和运行,类似php的目录设置哈.你可以把他当成一回事儿去看.
启动IIS6.0,首先在Web服务扩展里面添加允许.jsp后缀的Web服务扩展。
扩展名什么都随意填写,文件选择D:\wwwroot\scripts\isapi_srun.dll
这是Windows2003里面IIS6.0增强的安全功能,你可以允许服务器上有哪些服务扩展是允许的,哪些是禁止的。设置为允许。
打开网站文件夹属性,不是站点的属性哦.看清楚,在ISAPI筛选器里面添加新的筛选器,名称随意,这里输入jsp,
再输入可执行文件,D:\wwwroot\scripts\isapi_srun.dll
确认后,要注意一点,就是刚刚挂接进去的dll不会立即生效,优先级也显示*未知*
没有关系,不用理会。继续往下走。
在[主目录]-[配置]-[缓存ISAPI扩展]中添加.jsp的扩展.文件选择D:\wwwroot\scripts\isapi_srun.dll。
如果你不希望所有站点都支持jsp。这一步可以省去。以后在要支持jsp的站点属性中填加就可以了。
下面我们需要做的就是比较重要也很复杂的事情了,也就是修改Resin的配置文件。
让IIS+resin可以支持虚拟主机.(好多人要认真看啦~~我在网上找到教程贴里很少有介绍虚拟主机这部分的.只是介绍单站的.)
建立一个jsp网站, 指向我的IP 219.146.55.180
建立一个jsp网站,t.servsd.cn 指向我的IP 219.146.55.180
接下来,我修改c:\resin\conf目录下的配置文件resin.conf
这里非常关键,但其实最重要的就一个地方。
复制
为两份,并做相应的修改。
在每个jsp的网站上添加一个虚拟目录,目录名为scripts,并且去掉所有权限,只保留可执行。
重启Resin,重启IIS。
检查Resin有没有挂接进IIS的办法就是看ISAPI筛选器
如果状态是绿色箭头,表示已经被系统挂接成功。
然后浏览和t.servsd.cn访问test.jsp文件。
其实你也可以下个探针。探针里会显示当前目录。两个站的目录不同的话虚拟主机就是配置成功了。
而asp网站也同时可以运行,php却不可以了?想知道为什么吗?
resin.conf中的
这里调用了app-default.xml来确认文件类型。把这里和php相关的全删掉就可以了。
如果还不行。就把conf目录中所有文件里和php相关的删掉。重启IIS和Resin。OK!
搞定收工。