1、IIS+PHP+MySQL+phpMyAdmin+Zend Optimizer+GD 库安装教程一、软件准备:(软件匹配相当重要,主要考虑 PHP 与 MYsql,以下版本经使用比较稳定)PHP( V5.2.5)我用的是免安装版本:http:/ MySQL for Windows(V5.0.14Final):http:/ Extensions将;Windows Extensions 下面列举的CODE: Copy to clipboard ;extension=php_dbase.dll可选CODE: Copy to clipboard ;extension=php_gd2.dll上面这个是用
2、来支持 GD 库的,一般需要,必选。CODE: Copy to clipboard ;extension=php_ldap.dll可选CODE: Copy to clipboard ;extension=php_mbstring.dll上面这不选一般用 PHPMYADMIN 会出红色提示,故必选。CODE: Copy to clipboard ;extension=php_mssql.dll这个是用来支持 MSSQL 的,可选CODE: Copy to clipboard ;extension=php_mysql.dll上面这个是用来支持 MYSQL 的,要支持 MYSQL 必选。将上面提到的
3、这些前的“;“ 去掉,其他的你需要的也可以去掉前面的;然后关闭保存该文件。(4) 、配置 IIS 使其支持 PHP :首先必须确定系统中已经正确安装 IIS ,如果没有安装,需要先安装 IIS ,安装步骤如下:打开浏览器,输入: http:/localhost/,看到成功页面后进行下面的操作:PHP 支持 CGI 和 ISAPI 两种安装模式,推荐使用 ISAPI 模式。这里只解介绍 ISAPI 模式安装方法:ISAPI 模式安装步骤:在“控 制面板 ”的“管理工具”中选择“Internet 服务管理器 ”,打开 IIS 后停止服务,然后在左侧“ 你需要支持 PHP 的 Web 站点”比如“
4、默认 Web 站点”上单击右键选择“ 属性” ,在打开的 “ Web 站点属性”窗口的“ISAPI 筛选器”标签里找到并点击“ 添加” 按钮,在弹出的 “筛选器属性”窗口中的 “筛选器名称”栏中输入:PHP ,再将可执行文件指向 php5isapi.dll 所在路径,如:C:Inetpubphpphp5isapi.dll 。打 开“Web 站点属性 ”窗口的“主目录”标签,找到并点击“配置” 按钮,在弹出的“应用程序配置 ”窗口中找到并点击 “添加”按钮,在弹出的窗口中新增一个扩展名映射, 扩展名为 .php ,单击“浏览” 将可执行文件指向 php5isapi.dll 所在路径,如:C:In
5、etpubphpphp5isapi.dll ,然后一路确定即可。如果还想支持诸如 .php3 ,.phtml 等扩展名的 PHP 文件,可以重复“添加”步骤。再打开“ Web 站点属性 ”窗口的“文档”标签,找到并点击“添加” 按钮,向默认的 Web 站点启动文档列表中添加 index.php 项。您可以将 index.php 升到最高优先级,这样,访问站点时就会首先自动寻找并打开 index.php 文档。确定 Web 目录的应用程序设置和执行许可中选择为纯脚本,然后关闭 Internet 信息服务管理器,在命令提示符中执行如下命令:net stop w3svcnet stop iisadm
6、innet start w3svc然后在“Internet 服务管理器”左边的“WEB 服务扩展”中设置 ISAPI 扩展允许,Active Server Pages 允许打开浏览器,输入: http:/localhost/,看到成功页面后,在 IIS 根目录下新建一个 phpinfo.php ,内容如下:CODE: Copy to clipboard 打开浏览器,输入: http:/localhost/phpinfo.php,将显示当前服务器所支持 PHP 的全部信息,可以看到 Server API 的模式为:ISAPI 。三、安装 MySQL :如果你下载的是 Windows Essent
7、ials (x86) ,将得到 mysql-4.1.11-essential-win.exe ,直接双击安装即可。默认是 Typical,如果想修改安装路径的话也可以选择 custom.注意:安装 mysql 的路径中,不能含有中文!这里本人安装到 f:MySQL。点击 intall 开始安装选择 skip sign-up 并点击 Next 跳过注册(MySQL for Windows V5.0.14Final 没有这一步,其它版本可能有)安装过程中会提示你是不是立即进行配置,去掉勾选择否即可完成安装。可以之后在开始菜单的 MySql-mysql server 5.0-configuratio
8、n wizard 进行配置。现在我选择立即进行配置:选择 Detailed Configuration(详细设置),点 Next 继续下面这个选项是选择 mysql 应用于何种类型,第一种是开发服务器,将只用尽量少的内存,第二种是普通 WEB 服务器,将使用中等数量内存,最后一种是这台服务器上面只运行 MySQL 数据库,将占用全部的内存.用户可根据自己的需求,选择选项。我选择普通 WEB 服务器,点 Next 继续下面是选择数据库用途,第一种是多功能用途 ,将把数据库优化成很好的innodb(事务) 存储类型和高效率的 myisam(非事务 )存储类型, 第二种是只用于事务处理类型,最好的优
9、化 innodb,但同时也支持 myisam,只有 myisam 才支持全文索引,最后一种是简单的网络开发,适合于简单的应用, 只有不支持事务的 myisam 类型是被支持的 .一般选择第一种多功能的.下面是选择 InnodDB 的数据存放位置 ,一般默认好了,不需要改动。 (如果要修改数据保存路径,也可用在安装后修改 my.ini 的 datadir 的值,my.ini在 MySQL 的安装目录下) 。下面是选择 MySQL 允许的最大连接数,第一种是最大 20个连接并发数,第二种是最大500个并发连接数,最后 一种是自定义,你可以根据自己的需要选择.。这里选择第三个,自定义为100链接下面
10、是是否运行网络链接.这里选择复选框. 数据库监听的端口 ,一般默认是3306,如果改成其他端口, 以后连接数据库的时候都要记住修改的端口,否则不能连接 mysql 数据库, 比较麻烦, 这里不做修改,用 mysq 的默认端口:3306这一步设置 mysql 的默认编码,注意,这里的选择将会影响你是否能在MySQL 中使用中文。我们选择 gb2312字符集以便支持简体中文,繁体中文选 big5。默认是 latin1,也是标准的编码.第二种是 UTF8,第三种是手动设置.编码是版本4.1以上引入的.如果要用原来数据库的数据,最好能确定原来数据库用的是什么编码,如果这里设置的编码和原来数据库数据的编
11、码不一致, 在使用的时候可能会出现乱码. 建议使用 latin1标准编码。当然我们有需要的话,也可以修改它的编码(不建议 ).现在我选择第三项自定义,选择 gb2312字符集以便支持简体中文。这一步是是否要把 mysql 设置成 windows 的服务 ,一般选择设成服务,这样以后就可以通过服务中启动和关闭 mysql 数据库了 .推荐:下面的复选框也勾选上, 这样 ,在 cmd 模式下, 不必非到 mysql 的 bin 目录下执行命令.在命令行下咨询可以执行文件这一步是设置 mysql 的超级用户密码,这个超级用户非常重要,对 mysql拥有全部的权限,请设置好并牢记超级用户的密码。下面有
12、个复选框是表示创建一个匿名账号,这会使数据库系统不安全 .如果有这个需求 ,也请勾选.点击 Execute 进行安装点击 finish 完成安装有时到这一步出现 Mysql 错误:解决问题:不管它,点 Retry 继续,再在防火墙中开放3306 端口即可。也有时到这一步出现 Mysql 错误:Error Nr.1045 问题提示:Error Nr. 1045 Access denied for user rootlocalhost (Using password: NO) If a personal firewall is running on your machine, please mak
13、e sure you have opened the TCP port 3306 for connections. Otherwise no client application can connect to the server. After you have opened the port please press Retry to apply the security settings. If you are re-installing after you just uninstalled the MySQL server please note that the data direct
14、ory was not removed automatically. Therefore the old password from your last installations is still needed to connect to the server. In this case please select skin now and re-run the Configuration Wizard from the start menu.问题解决方案:1、停止 msyql 服务(net STOP mysql) ,在控制面板添加删除程序中卸载MySQL,手动删除卸载没删除的文件夹,切记删
15、除 my.ini 文件。重新启动(net start mysql) 。安装。最好换个盘符。或:再次使用 MySQL Installer,什么都不用动,只需要点 next, next, next, yes, yes, yes.这样就可以安装,启动 Mysql 了。2、使用 Windows 防火墙打开端口。开始-控制面板-windows 防火墙-例外。点击“ 添加端口” 按钮:名称: mysql 端口号: 3306。点击“添加程序”按钮:添加 Mysql(C:/Programs Files/mysql 5.x.x/bin/mysql.exe )3、最好能重启一下电脑。到这一步,我们可以开始使用 m
16、ysql 了,打开开始菜单 所有程序的 mysql Command line Client,输入密码,出现这个界面说明 mysql 已经安装好了如果未能使用,可在安装完毕后,在“开 始” 菜单的“运行”中输入(具体按你的安装路径):C:InetpubMySQLbinmysqld-nt -install ,运行成功之后再输入:net mysql start ,将会启动 MySQL 服务。如果你还想较详细的配置 MySQL ,就请进入 C:InetpubMySQLbin 目录,运行 MySQLInstanceConfig.exe ,按提示操作即可。如果你下载的是 Windows (x86) ,解压
17、后双击执行 Setup.exe 即可,步骤同上。如果你下载的是 Without installer (unzip in C:) ,直接解压到C:InetpubMySQL,在“开始”菜单的“ 运行”中输入: C:InetpubMySQLbinmysqld-nt.exe ,运行成功之后再输入:net mysql start ,即可启动 MySQL 服务。为 MYSQL 修改(设置)密码,确保安全:一般菜单里面有配置向导 MySQL Server Instance Config Wizar,运行后按下面步骤配置设置 ROOT 密码即可。启动后,点击 next-next,选择第二项:再勾选 Inclu
18、de Bin Directory in Windows PATHROOT 密码,建议社设置复杂点,确保服务器安全!在 New root password(输入新密码) 和 Confirm(确认)两个框内输入期望的密码。如果重新配置已有的服务器,你还需要 Current root password(当前 root 密码) 框内输入已有的 root 密码。要想防止通过网络以 root 登录,选中 Root may only connect from localhost(只允许从本机登陆连接 root)选项旁边的框。这样可以提高 root 账户的安全。要想创建一个匿名用户账户,选中 Create A
19、n Anonymous Account(创建匿名账户)选项旁边的框。创建匿名账户会降低服务器的安全,并造成登录和许可困难。因此不建议。也可以在 MySQL Command Line Client 里面用命令配置:首先在打开 DOS 窗口,然后进入目录 mysqlbin,再键入命令 mysql -uroot -p,回车后提示你输密码,如果刚安装好 MYSQL,超级用户 root 是没有密码的,故直接回车即可进入到 MYSQL 中了,MYSQL 的提示符是:mysql 修改密码。 格式:mysqladmin -u 用户名 -p 旧密码 password 新密码 例:给 root 加个密码12345
20、6首先在 DOS 下进入目录 mysqlbin,然后键入以下命令 mysqladmin -uroot -password 123456 注:因为开始时 root 没有密码,所以-p 旧密码一项就可以省略了。然后执行:SET PASSWORD FOR rootlocalhost = OLD_PASSWORD(123456);这里的命令是由于 MySQL 5.0 及其后版本验证协议使用的密码哈希算法与老的客户端不兼容,在 PHPMYADMIN 里用正确密码登陆也会提示:Client does not support authentication protocol requestedby serve
21、r; consider upgrading MySQL client所以是为后面正确使用 PHPMYADMIN 做准备这样 ROOT 密码就设置为123456了四、安装 Zend Optimizer (用优化代码的方法来提高 PHP 应用程序的执行速度):下载后得到 ZendOptimizer-3.3.0a-Windows-i386.exe ,直接双击安装,同意协议,考虑是否选择安装路径:安装过程要你选择 Web Server 时,选择 IIS :提示选择 php.ini 存放路径, Zend Optimizer 的安装向导会自动根据你的选择来修改 php.ini 帮助你启动这个引擎。以下为本
22、人安装完成后 php.ini 里的默认配置代码(分号后面的内容为注释):zend_extension_ts=“C:Program FilesZendZendOptimizer-3.3.0libZendExtensionManager.dll“;Zend Optimizer 模块在硬盘上的安装路径。zend_extension_manager.optimizer_ts=“C:Program FilesZendZendOptimizer-3.3.0libOptimizer-3.3.0“点 Next:然后提示你是否 Restart Web Server,选择是:提示是否查看说明文档,可不查看:安装
23、GD 库 这一步在前面 PHP.INI 配置中实际上已经安装好了 如果没有安装,可在 php.ini 里找到 “extension_dir“,然后将路径指向extension,如下(假设你的 php 安装路 径 为:C:Inetpubphp、设置 extension_dir = “C:Inetpubphp、ext“,完成这步后,在 php.ini 里找到“extension=php_gd2.dll“这一行,并且去掉前面的分号,gd 库安装完成,用 echophpinfo();测试是否成功! 五、安装 phpMyAdmin:下载得到 phpMyAdmin2.11.4.zip ,将其解压到 IIS
24、 根目录,找到并打开 config.inc.php (2.9版本以上为 phpMyAdmin/libraries 下的config.default.php) ,做以下修改:搜 索$cfgPmaAbsoluteUri,设置你的 phpmyadmin 的 URL,如:$cfgPmaAbsoluteUri = http:/localhost/phpmyadmin/; 注意这里假设 phpmyadmin 在默认站点的根目录下搜索$cfgblowfish_secret,设定好 root 密码后这里也要填写比如ROOT 密码123456则设置为 $cfgblowfish_secret = 123456;搜
25、索$cfgDefaultLang ,将其设置为 zh-gb2312 ;搜索$cfgDefaultCharset ,将其设置为 gb2312 ;搜索$cfgServers$iauth_type,默认为 config,是不安全的,不推荐,推荐使用 cookie,将其设置为$cfgServers$iauth_type = cookie; 注意这里如果设置为 config 请在下面设置用户名和密码!例如:$cfgServers$iuser = root; / MySQL user-MySQL 连接用户$cfgServers$ipassword = 123456; 打开浏览器,输入: http:/loc
26、alhost/phpMyAdmin/,若 IIS 和 MySQL 均已启动,输入用户 ROOT 密码123456即可浏览数据库内容。至此所有安装完毕。 常见问题解决:从网上搜集的资料:一、登录 phpmyadmin 后发现:无法载入 mcrypt 扩展:下面提供的是终极解决方案:1、在 php.ini 配置中,将 php_mcrypt.dll 前的;去掉。2、从 php5中复制 libmcrypt.dll 到 dlls 目录和 system32目录下。3、运行 iisreset 重新启动 iis(必须用 iisreset 重启 iis,在“Internet 信息服务”重启是没有用的) 。原因分
27、析:php_mcrypt.dll 需要 libmcrypt.dll 支持。二、IASPI 筛选器加载不成功:这个一般是由于 PHP.INI 的配置导致的,请在加载 PHP 的 IASPI 筛选器前配置好 PHP.INI 并确保复制到了系统目录( 2000系统一般 C:WINNT 目录下,XP 和2003的一般 C:WINDOWS 目录),还有一个原因好象 PHP 目录是不能放 C:Program Files 这种带空格的目录下的, 所以最好直接放系统根目录下如 C:PHP三、PHP 配置后导致 IIS 锁死现象,请重新启动系统后直接卸载 IIS 后重装 IIS,因此建议配置 PHP 前自己先在
28、本机测试 ,再到服务器配置 ,并且配置前注意备份IIS,一般建议 XP 和2003系统尝试配置 PHP5.x 版本,因为2003的是 IIS6.0版本,一般存在 IIS 6.0中早期版本的 ISAPI 筛选器不能加载, 所以有可能PHP4.x 的版本 ISAPI 筛选器不能加载导致无法完成 PHP 配置,2000 系统一般装 PHP5.X 版本也很少有问题,当然有人说 PHP4.X 版本比较稳定, 可以自行选择合适版本配置,若装 PHP5.X 不成功也可以尝试配置4.X 版本四、MYSQL 问题, 若一次配置 MYSQL 不成功,请正确并完整卸载 MYSQL后重装后多尝试几次进行配置一般就没问
29、题了,强烈申明不要使用直接删除MYSQL 文件夹的方法来重装 MYSQL,这样的后果很严重,一般是无法再正常成功安装配置 MYSQL 了, 因为系统服务里面会遗留 MYSQL 服务导致再安装MYSQL 后无法启动 MYSQL 服务五、PHPMYADMIN 连接 MYSQL 的问题,有的连接登陆时会有下面的错误提示:Client does not support authentication protocol requested by server; consider upgrading MySQL client这是由于 MySQL 4.1 及其后版本验证协议使用的密码哈希算法与老的客户端不兼容
30、,因此需要在 MySQL Command Line Client 里面用命令同步兼容密码:进入 MySQL Command Line Client 后 MYSQL 的提示符是:mysql 然后执行:CODE:Copy to clipboardSET PASSWORD FOR rootlocalhost = OLD_PASSWORD(你的 ROOT 管理密码);然后再登陆 PHPMYADMIN 就可以了, 登陆后可以在权限里面添加修改设置帐号和访问权限六、PHP 运行失败或错误, 如果运行 PHP 后出现普通的无法找到网页“一般是由于文件不存在错误或者 PHP 没有配置成功, 请返回检查 PHP
31、 配置!其他失败表现为1).运行 PHP 程序页面空白;2)您没有权限查看该网页;3)failed to open stream 错误,如:Warning: main(./libraries/grab_globals.lib.php): failed to open stream: No such file or directory in E:phpMyAdminindex.php on line 8Fatal error: main(): Failed opening required ./libraries/grab_globals.lib.php (include_path=.;c:ph
32、p4pear) in E:phpMyAdminindex.php on line 8这些一般都是权限设置问题导致的,由于 PHP 对于权限比较敏感 ,因此经过本人尝试以下权限分配可以获得最佳权限限制和正常访问:PHP 安装文件目录需要添加 EVERYONE 读取和运行权限,如果你的系统做过安全和权限,磁盘的根目录只给了 ADMIN 权限 ,请将要运行的网站程序目录在 IIS 里面指向的时候要是在磁盘的二级目录下如 D:webphpwind,并且父目录和自身目录都给 IIS 读取和运行权限 ,即 WEB 和 PHPWIND 都给IIS_USER 权限 ,没做权限的可以随意指向目录。以上关于 PHP 的问题的一些总结也适用于大部分 PHP 程序运行和 PHP 配置问题, 特别 failed to open stream 这个错误用我介绍的权限设置方案可以完美解决, 我在遇到这个错误后搜索了大量内容, 都没给出详细解决办法 ,并且出现这个问题的人还很多,终于在我的尝试下解决了, 如果还不能解决的请给EVEYONE 权限试试。文章原创于