教你IIS6的PHP最佳配置方法


Posted in PHP onSeptember 05, 2006

虽然 LAMP 组合很不错,但是如果想要架设一台同时支持PHP、ASP、ASP.NET、JSP、Perl的Web虚拟主机服务器,还是用 Windows 2003的IIS 6最好。网上有很多介绍在IIS 6上配置PHP的文章,但是那些方法不是性能不好,就是升级麻烦。下面的方法可以让你在第一次配置好后,能够非常方便的进行升级。

这里所说的升级,是指从某个php4版本升级到另一个php4版本,或者从某个php5版本升级到另一个php5版本,而不是指从php4升级到php5。

准备:

1、一台安装好的 Windows 2003 服务器,并且已经安装了 IIS 6。

2、下载 windows 版的 PHP 二进制压缩包

安装:

解压缩 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 目录中复制任何文件。是不是很方便啊?

PHP 相关文章推荐
php 执行系统命令的方法
Jul 07 PHP
php数据库抽象层 PDO
May 07 PHP
探讨方法的重写(覆载)详解
Jun 08 PHP
浅析php插件 Simple HTML DOM 用DOM方式处理HTML
Jul 01 PHP
ThinkPHP独立分组使用的注意事项
Nov 25 PHP
php源码分析之DZX1.5字符串截断函数cutstr用法
Jun 17 PHP
PHP识别二维码的方法(php-zbarcode安装与使用)
Jul 07 PHP
php利用嵌套数组拼接与解析json的方法
Feb 07 PHP
PHP排序算法之快速排序(Quick Sort)及其优化算法详解
Apr 21 PHP
PHP实现带进度条的Ajax文件上传功能示例
Jul 02 PHP
laravel 执行迁移回滚示例
Oct 23 PHP
TP5框架model常见操作示例小结【增删改查、聚合、时间戳、软删除等】
Apr 05 PHP
详细介绍:Apache+PHP+MySQL配置攻略
Sep 05 #PHP
PHP环境搭建最新方法
Sep 05 #PHP
初学者入门:细述PHP4的核心Zend
Sep 05 #PHP
PHP在XP下IIS和Apache2服务器上的安装
Sep 05 #PHP
PHP5.0对象模型探索之抽象方法和抽象类
Sep 05 #PHP
PHP 5.0对象模型深度探索之绑定
Sep 05 #PHP
PHP中的串行化变量和序列化对象
Sep 05 #PHP
You might like
WordPress开发中短代码的实现及相关函数使用技巧
2016/01/05 PHP
php制作简单模版引擎
2016/04/07 PHP
关于viewport,Ext.panel和Ext.form.panel的关系
2009/05/07 Javascript
js prototype截取字符串函数
2010/04/01 Javascript
使用js检测浏览器的实现代码
2013/05/14 Javascript
jQuery动画效果-fadeIn fadeOut淡入浅出示例代码
2013/08/28 Javascript
node.js中的http.get方法使用说明
2014/12/14 Javascript
JSON格式的键盘编码对照表
2015/01/29 Javascript
对javascript继承的理解
2016/10/11 Javascript
js实现手机发送验证码功能
2017/03/13 Javascript
详解vue的数据binding绑定原理
2017/04/12 Javascript
js实现扫雷小程序的示例代码
2017/09/27 Javascript
vue组件详解之使用slot分发内容
2018/04/09 Javascript
JavaScript简单实现的仿微博留言功能示例
2019/01/17 Javascript
解决Vue.js应用回退或刷新界面时提示用户保存修改问题
2019/11/24 Javascript
vue tab滚动到一定高度,固定在顶部,点击tab切换不同的内容操作
2020/07/22 Javascript
vue中实现点击变成全屏的多种方法
2020/09/27 Javascript
微信小程序使用前置摄像头拍照
2020/10/22 Javascript
[03:42]2014DOTA2西雅图国际邀请赛 Navi战队巡礼
2014/07/07 DOTA
[01:23:35]Ti4主赛事胜者组 DK vs EG 1
2014/07/19 DOTA
Python3.0与2.X版本的区别实例分析
2014/08/25 Python
Python选课系统开发程序
2016/09/02 Python
老生常谈Python之装饰器、迭代器和生成器
2017/07/26 Python
Python 微信之获取好友昵称并制作wordcloud的实例
2019/02/21 Python
pytz格式化北京时间多出6分钟问题的解决方法
2019/06/21 Python
python3 实现的对象与json相互转换操作示例
2019/08/17 Python
详解Python 最短匹配模式
2020/07/29 Python
python实现图片转换成素描和漫画格式
2020/08/19 Python
python super()函数的基本使用
2020/09/10 Python
Python实现曲线拟合的最小二乘法
2021/02/19 Python
Probikekit欧盟:在线公路自行车专家
2019/07/12 全球购物
应届毕业生通用的自荐书范文
2014/02/07 职场文书
小学爱国卫生月活动总结
2014/06/30 职场文书
2014年底个人工作总结
2015/03/10 职场文书
2015年幼儿教师个人工作总结
2015/05/20 职场文书
详解Java ES多节点任务的高效分发与收集实现
2021/06/30 Java/Android