资源描述
IIS+PHP+MySQL+phpMyAdmin+Zend Optimizer+GD库安装教程
一、软件准备:(软件匹配相当重要,主要考虑PHP与MYsql,以下版本经使用比较稳定)
PHP(V5.2.5)我用的是免安装版本:
MySQL for Windows(V5.0.14Final):
Zend Optimizer(v3.3.0a):
phpMyAdmin(v2.11.4 rc1):
安装前注意事项:
1、本例是以C:\作为操作系统的系统盘,如果你目前操作系统不是安装在 C:\ ,请自行选择安装过程中的有关选项。
2、如果有旧的PHP环境和mysql,必须停止IIS和mysql,删除PHP环境和mysql才能正确安装。强烈建议不要使用直接删除MYSQL文件夹的方法来重装MYSQL,这样会造成严重的后果,一般是无法再正常成功安装配置MYSQL了,因为系统服务里面会遗留MYSQL服务又不能正常停止,导致再安装MYSQL后无法启动MYSQL服务!要在控制面板添加删除程序中删除。
运行-分别填入:
NET STOP W3SVC (停止IIS)
NET START W3SVC (启动IIS)
net stop mysql (停止mysql)
net START mysql (启动mysql)
二、安装 PHP :
(1)、将 php-5.2.5-Win32.zip ,解压至C:\Inetpub\php(这个路径可以随意,不过下面要是用到这个路径,请相应修改);
(2)、再将C:\Inetpub\php目录下的所有dll文件(主要是C:\Inetpub\php下C:\Inetpub\php\ext下的DLL文件)拷到c:\Windows\system32下,覆盖已有的dll文件;
(3)、将C:\PHP目录下的php.exe、php-win.exe和php.ini-dist三个文件拷到C:\Windows ( Windows 2000 下为 C:\WINNT)下; 将C:\Windows\php.ini-dist改名为php.ini,然后用记事本打开,利用记事本的查找功能搜索下列内容,并按说明修改有关参数:
CODE:
[Copy to clipboard]
register_globals = Off
,将 Off 改成 On ;
再搜索
CODE:
[Copy to clipboard]
extension_dir =
,并将其路径指到你的 PHP 目录下的 extensions 目录,比如:extension_dir = "C:\Inetpub\php\ext" (这个路径要与你安装PHP的路径对应);
搜索找到下面各项,并将各项前面的";"去掉,以启用:
CODE:
[Copy to clipboard]
;Windows Extensions
将;Windows Extensions下面列举的
CODE:
[Copy to clipboard]
;extension=php_dbase.dll
可选
CODE:
[Copy to clipboard]
;extension=php_gd2.dll
上面这个是用来支持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必选。
将上面提到的这些前的";"去掉,其他的你需要的也可以去掉前面的;然后关闭保存该文件。
(4)、配置 IIS 使其支持 PHP :
首先必须确定系统中已经正确安装 IIS ,如果没有安装,需要先安装 IIS ,安装步骤如下:
打开浏览器,输入:http://localhost/,看到成功页面后进行下面的操作:
PHP 支持 CGI 和 ISAPI 两种安装模式,推荐使用 ISAPI 模式。这里只解介绍 ISAPI 模式安装方法:ISAPI 模式安装步骤:
在“控 制面板”的“管理工具”中选择“Internet 服务管理器”,打开 IIS 后停止服务,然后在左侧“你需要支持PHP的Web站点”比如“默认Web站点”上单击右键选择“属性”,在打开的“ Web 站点属性”窗口的“ISAPI 筛选器”标签里找到并点击“添加”按钮,在弹出的“筛选器属性”窗口中的“筛选器名称”栏中输入:PHP ,再将可执行文件指向 php5isapi.dll 所在路径,如:C:\Inetpub\php\php5isapi.dll 。
打 开“Web 站点属性”窗口的“主目录”标签,找到并点击“配置”按钮,在弹出的“应用程序配置”窗口中找到并点击“添加”按钮,在弹出的窗口中新增一个扩展名映射, 扩展名为 .php ,单击“浏览”将可执行文件指向 php5isapi.dll 所在路径,如:C:\Inetpub\php\php5isapi.dll,然后一路确定即可。如果还想支持诸如 .php3 ,.phtml 等扩展名的 PHP 文件,可以重复“添加”步骤。
再打开“Web 站点属性”窗口的“文档”标签,找到并点击“添加”按钮,向默认的 Web 站点启动文档列表中添加 index.php 项。您可以将 index.php 升到最高优先级,这样,访问站点时就会首先自动寻找并打开 index.php 文档。
确定 Web 目录的应用程序设置和执行许可中选择为纯脚本,然后关闭 Internet 信息服务管理器,在命令提示符中执行如下命令:
net stop w3svc
net stop iisadmin
net start w3svc
然后在“Internet 服务管理器”左边的“WEB服务扩展”中设置ISAPI 扩展允许,Active Server Pages 允许
打开浏览器,输入:http://localhost/,看到成功页面后,在 IIS 根目录下新建一个 phpinfo.php ,内容如下:
CODE:
[Copy to clipboard]
<?php
phpinfo();
?>
打开浏览器,输入:http://localhost/phpinfo.php,将显示当前服务器所支持 PHP 的全部信息,可以看到 Server API的模式为:ISAPI 。
三、安装 MySQL :
如果你下载的是 Windows Essentials (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-configuration wizard 进行配置。
现在我选择立即进行配置:
选择Detailed Configuration(详细设置),点Next继续
下面这个选项是选择mysql应用于何种类型,第一种是开发服务器,
将只用尽量少的内存,第二种是普通WEB服务器,将使用中等数量内存,
最后一种是这台服务器上面只运行MySQL数据库,将占用全部的内存.
用户可根据自己的需求,选择选项。我选择普通WEB服务器,点Next继续
下面是选择数据库用途,第一种是多功能用途,将把数据库优化成很好的innodb(事务)存储类型和高效率的myisam(非事务)存储类型,第二种是只用于事务处理类型,最好的优化innodb,但同时也支持myisam,只有myisam才支持全文索引,最后一种是简单的网络开发,适合于简单的应用,只有不支持事务的myisam类型是被支持的.一般选择第一种多功能的.
下面是选择InnodDB的数据存放位置,一般默认好了,不需要改动。 (如果要修改数据保存路径,也可用在安装后修改my.ini的datadir的值,my.ini在MySQL的安装目录下)。
下面是选择MySQL允许的最大连接数,第一种是最大20个连接并发数,
第二种是最大500个并发连接数,最后 一种是自定义,你可以根据自己的需要选择.。这里选择第三个,自定义为100链接
下面是是否运行网络链接.这里选择复选框.数据库监听的端口,一般默认是3306,如果改成其他端口,以后连接数据库的时候都要记住修改的端口,否则不能连接mysql数据库,比较麻烦,这里不做修改,用mysq的默认端口:3306
这一步设置mysql的默认编码,注意,这里的选择将会影响你是否能在MySQL中使用中文。我们选择gb2312字符集以便支持简体中文,繁体中文选big5。默认是latin1,也是标准的编码.第二种是UTF8,第三种是手动设置.
编码是版本4.1以上引入的.如果要用原来数据库的数据,最好能确定原来数据库用的是什么编码,如果这里设置的编码和原来数据库数据的编码不一致,在使用的时候可能会出现乱码.建议使用latin1标准编码。当然我们有需要的话,也可以修改它的编码(不建议).
现在我选择第三项自定义,选择gb2312字符集以便支持简体中文。
这一步是是否要把mysql设置成windows的服务,一般选择设成服务,这样以后就可以通过服务中启动和关闭mysql数据库了.推荐:下面的复选框也勾选上,这样,在cmd模式下,不必非到mysql的bin目录下执行命令.在命令行下咨询可以执行文件
这一步是设置mysql的超级用户密码,这个超级用户非常重要,对mysql拥有全部的权限,请设置好并牢记超级用户的密码。下面有个复选框是表示创建一个匿名账号,这会使数据库系统不安全.如果有这个需求,也请勾选.
点击 Execute进行安装
点击finish完成安装
有时到这一步出现Mysql错误:
解决问题:不管它,点Retry继续,再在防火墙中开放3306端口即可。
也有时到这一步出现Mysql错误:Error Nr.1045
问题提示:
Error Nr. 1045
Access denied for user 'root'@'localhost' (Using password: NO)
If a personal firewall is running on your machine, please make 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 directory 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,手动删除卸载没删除的文件夹,切记删除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、最好能重启一下电脑。
到这一步,我们可以开始使用mysql了,打开开始菜单 所有程序的 mysql Command line Client,输入密码,出现这个界面说明mysql已经安装好了
如果未能使用,可在安装完毕后,在“开 始”菜单的“运行”中输入(具体按你的安装路径):C:\Inetpub\MySQL\bin\mysqld-nt -install ,运行成功之后再输入:net mysql start ,将会启动 MySQL 服务。
如果你还想较详细的配置 MySQL ,就请进入 C:\Inetpub\MySQL\bin 目录,运行 MySQLInstanceConfig.exe ,按提示操作即可。
如果你下载的是 Windows (x86) ,解压后双击执行 Setup.exe 即可,步骤同上。
如果你下载的是 Without installer (unzip in C:\) ,直接解压到C:\Inetpub\MySQL,在“开始”菜单的“运行”中输入: C:\Inetpub\MySQL\bin\mysqld-nt.exe ,运行成功之后再输入:net mysql start ,即可启动 MySQL 服务。
为MYSQL修改(设置)密码,确保安全:
一般菜单里面有配置向导MySQL Server Instance Config Wizar,运行后按下面步骤配置设置ROOT密码即可。启动后,点击next-next,选择第二项:
再勾选Include Bin Directory in Windows PATH
ROOT密码,建议社设置复杂点,确保服务器安全!在New root password(输入新密码)和Confirm(确认)两个框内输入期望的密码。如果重新配置已有的服务器,你还需要Current root password(当前root密码)框内输入已有的root密码。要想防止通过网络以root登录,选中Root may only connect from localhost(只允许从本机登陆连接root)选项旁边的框。这样可以提高root账户的安全。要想创建一个匿名用户账户,选中Create An Anonymous Account(创建匿名账户)选项旁边的框。创建匿名账户会降低服务器的安全,并造成登录和许可困难。因此不建议。
也可以在MySQL Command Line Client里面用命令配置:
首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql>
修改密码。
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例:给root加个密码123456首先在DOS下进入目录mysqlbin,然后键入以下命令
mysqladmin -uroot -password 123456
注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
然后执行:
SET PASSWORD FOR 'root'@'localhost' = OLD_PASSWORD('123456');
这里的命令是由于MySQL 5.0 及其后版本验证协议使用的密码哈希算法与老的客户端不兼容,在PHPMYADMIN里用正确密码登陆也会提示:
Client does not support authentication protocol requested
by server; 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 帮助你启动这个引擎。
以下为本人安装完成后 php.ini 里的默认配置代码(分号后面的内容为注释):
zend_extension_ts="C:\Program Files\Zend\ZendOptimizer-3.3.0\lib\ZendExtensionManager.dll"
;Zend Optimizer 模块在硬盘上的安装路径。
zend_extension_manager.optimizer_ts="C:\Program Files\Zend\ZendOptimizer-3.3.0\lib\Optimizer-3.3.0"
点Next:
然后提示你是否 Restart Web Server,选择是:
提示是否查看说明文档,可不查看:
安装GD库
这一步在前面PHP.INI配置中实际上已经安装好了~
如果没有安装,可在php.ini里找到 "extension_dir",然后将路径指向extension,如下(假设你的php安装路
径 为:C:\Inetpub\php、设置extension_dir = "C:\Inetpub\php、ext",完成这步后,在php.ini里找到"extension=php_gd2.dll"这一行,并且去掉前面的分号,gd库安装完成,用echophpinfo();测试是否成功!
五、安装 phpMyAdmin:
下载得到 phpMyAdmin2.11.4.zip ,将其解压到 IIS 根目录,找到并打开 config.inc.php (2.9版本以上为phpMyAdmin/libraries下的config.default.php),做以下修改:
搜 索$cfg['PmaAbsoluteUri'],设置你的phpmyadmin的URL,如:$cfg['PmaAbsoluteUri'] = 'http://localhost/phpmyadmin/'; 注意这里假设phpmyadmin在默认站点的根目录下
搜索$cfg['blowfish_secret'],设定好root密码后这里也要填写比如ROOT密码123456则设置为$cfg['blowfish_secret'] = '123456';
搜索$cfg['DefaultLang'] ,将其设置为 zh-gb2312 ;
搜索$cfg['DefaultCharset'] ,将其设置为 gb2312 ;
搜索$cfg['Servers'][$i]['auth_type'],默认为config,是不安全的,不推荐,推荐使用cookie,将其设置为$cfg['Servers'][$i]['auth_type'] = 'cookie';
注意这里如果设置为config请在下面设置用户名和密码!例如:
$cfg['Servers'][$i]['user'] = 'root'; // MySQL user-----MySQL连接用户
$cfg['Servers'][$i]['password'] = '123456';
打开浏览器,输入:http://localhost/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 信息服务”重启是没有用的)。
原因分析: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前自己先在本机测试,再到服务器配置,并且配置前注意备份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后重装后多尝试几次进行配置一般就没问题了,强烈申明不要使用直接删除MYSQL文件夹的方法来重装MYSQL,这样的后果很严重,一般是无法再正常成功安装配置MYSQL了,因为系统服务里面会遗留MYSQL服务导致再安装MYSQL后无法启动MYSQL服务
五、PHPMYADMIN连接MYSQL的问题,有的连接登陆时会有下面的错误提示:
Client does not support authentication protocol requested by server; consider upgrading MySQL client
这是由于MySQL 4.1 及其后版本验证协议使用的密码哈希算法与老的客户端不兼容,因此需要在MySQL Command Line Client里面用命令同步兼容密码:
进入MySQL Command Line Client后MYSQL的提示符是:mysql>
然后执行:
CODE:[Copy to clipboard]SET PASSWORD FOR 'root'@'localhost' = OLD_PASSWORD('你的ROOT管理密码');
然后再登陆PHPMYADMIN就可以了,登陆后可以在权限里面添加修改设置帐号和访问权限
六、PHP运行失败或错误,如果运行PHP后出现普通的无法找到网页"一般是由于文件不存在错误或者PHP没有配置成功,请返回检查PHP配置!
其他失败表现为
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:\phpMyAdmin\index.php on line 8
Fatal error: main(): Failed opening required './libraries/grab_globals.lib.php' (include_path='.;c:\php4\pear') in E:\phpMyAdmin\index.php on line 8
这些一般都是权限设置问题导致的,由于PHP对于权限比较敏感,因此经过本人尝试以下权限分配可以获得最佳权限限制和正常访问:
PHP安装文件目录需要添加EVERYONE读取和运行权限,如果你的系统做过安全和权限,磁盘的根目录只给了ADMIN权限,请将要运行的网站程序目录在IIS里面指向的时候要是在磁盘的二级目录下如D:\web\phpwind,并且父目录和自身目录都给IIS读取和运行权限 ,即WEB和PHPWIND都给IIS_USER权限,没做权限的可以随意指向目录。
以上关于PHP的问题的一些总结也适用于大部分PHP程序运行和PHP配置问题,特别failed to open stream这个错误用我介绍的权限设置方案可以完美解决,我在遇到这个错误后搜索了大量内容,都没给出详细解决办法,并且出现这个问题的人还很多,终于在我的尝试下解决了,如果还不能解决的请给EVEYONE权限试试。
文章原创于
展开阅读全文