整理一篇比较详细的windows下php运行环境的配置的资料,包括apache的安装、mysql的安装、php的安装、 ZendOptimizer 的安装、phpMyAdmin的安装,包括安装过程会出现的问题的解决,比如:phpMyAdmin数据库中文乱码的解决等。
//****************
1、软件
(1)apache_2.2.4-win32-x86-no_ssl.zip
(2)mysql-5.0.27-win32.zip
(3)php-5.2.0-Win32.zip
(4)ZendOptimizer-3.2.6-Windows-i386.zip
(5)phpMyAdmin-2.10.2-rc1-all-languages.zip
下载:http://down.phpv.net/sort/7_1.htm
//****************
2、Apache 的安装
(1) 点击apahce安装包
(2) 接受协议
(3) 下面3项随便填即可
apache 监听80 端口.如果iis用了80端口,修改iis端口或者apache端口,以免冲突
(4) 这里默认的是 typical,点击next.
(5) 这里可用修改安装路径,注意安装路径不能含中文.
(6) 点击install开始安装
(7) 安装完成后在浏览器里打入 http://localhost 或者 http://127.0.0.1
如果可以看到这个页面,证明apache安装成功,已经可以解释静态页面了
//****************
3、MySQL 的安装
(1)点击MySQL安装包
(2) 默认是Typical,如果想修改安装路径的话也可以选择custom.
注意:安装mysql的路径中,不能含有中文!
(3)点击intall开始安装
(4)跳过注册
(5)是否现在就配置 MySQL.也可以之后在开始菜单的configuration wizard 进行配置.这里是现在进行配置
(6)选择Detailed Configuration(详细设置),点Next继续
(7)下面这个选项是选择mysql应用于何种类型,第一种是开发服务器,
将只用尽量少的内存,第二种是普通WEB服务器,将使用中等数量内存,
最后一种是这台服务器上面只运行MySQL数据库,将占用全部的内存.
用户可根据自己的需求,选择选项.这里只选择开发服务器,点Next继续
(8)下面是选择数据库用途,第一种是多功能用途,
将把数据库优化成很好的innodb(事务)存储类型和高效率的myisam(非事务)存储类型,
第二种是只用于事务处理类型,最好的优化innodb,但同时也支持myisam,只有myisam才支持全文索引
最后一种是简单的网络开发,适合于简单的应用,只有不支持事务的myisam类型是被支持的.
一般选择第一种多功能的.
(9)下面是选择InnodDB的数据存放位置,一般默认好了,不需要改动(如果要修改数据保存路径,也可用在安装后修改my.ini的datadir的值)
(10) 下面是选择MySQL允许的最大连接数,第一种是最大20个连接并发数,
第二种是最大500个并发连接数,最后 一种是自定义,你可以根据自己的需要选择.
这里选择第一个
(11)下面是是否运行网络链接.这里选择复选框.数据库监听的端口,一般默认是3306,
如果改成其他端口,以后连接数据库的时候都要记住修改的端口,否则不能连接mysql数据库,
比较麻烦,这里不做修改,用mysq的默认端口:3306
(12)这一步设置mysql的默认编码,默认是latin1,也是标准的编码.第二种是UTF8,第三种是手动设置.
编码是版本4.1以上引入的.如果要用原来数据库的数据,最好能确定原来数据库用的是什么编码,如果这里设置的编码和原来数据库数据的编码不一致,在使用的时候可能会出现乱码.建议使用latin1标准编码
当然我们有需要的话,也可以修改它的编码(不建议).
(13) 这一步是是否要把mysql设置成windows的服务,一般选择设成服务,
这样以后就可以通过服务中启动和关闭mysql数据库了.推荐:下面的复选框也勾选上,
这样,在cmd模式下,不必非到mysql的bin目录下执行命令.在命令行下咨询可以执行文件
(14)这一步是设置mysql的超级用户密码,这个超级用户非常重要,
对mysql拥有全部的权限,请设置好并牢记超级用户的密码,
下面有个复选框是表示创建一个匿名账号,这会使数据库系统不安全.
如果有这个需求,也请勾选.
(15)点击 Execute进行安装
(16)点击finish完成安装
(17)我们可以开始使用mysql了,打开 开始菜单 所有程序的 mysql Command line Client,输入密码
出现这个界面说明mysql已经安装好了
A:可能出现的问题:
如果在第15步,你出现的界面是像下面这样
有三个输入密码的地方,则有可能您是在原来基础上安装的.
你在第一个文本框输入原来root的密码,后面两个文本框输入root的新密码,
点击Next基础,出现下图
B:给您推荐几种解决办法:
[1]、点Retry,重试;
[2]、再运行一次设置,看到有关“移除原设置”的选项,选择移除,然后在重新设置.
[3]、重装.
重装注意事项:最好删除原来的所有文件,必要的话,可以清一下注册表,
如果你机器上没有其它mysql相关的程序.而且一定记得不要保留原有的my.ini文件.
还有就是删除原来安装路径下的文件,并删除数据目录下面的ibdata1文件.
//****************
4、PHP 的安装
由于php是一个zip文件(非install版),安装较为简单
解压就行.把解压的 php-5.2.0-Win32 重命名为 php5.并复制到C盘目录下.即安装路径为 c:/php5
(1)找到php目录下的 php.ini.recommended (或者php.ini-dist)文件,重命名为 php.ini
并复制到系统盘的windows目录下(以c:/windows为例).
(2)再把php目录下的php5ts.dll,libmysql.dll复制到目录 c:/windows/system32下.
如果没把libmysql.dll复制到system32下,在重启apache时可能会出现如下警告
(3) 把php5/ext目录下的php_gd2.dll,php_mysql.dll,php_mbstring.dll文件复制到c:/windows/system32下
如果没有加载 php_gd2.dll php将不能处理图像.没有加载php_mysql.dll php将不支持mysql函数库
php_mbstring.dll在后面使用phpmyadmin时支持宽字符
//****************
5、配置php并关联MySQL
打开c:/windows/php.ini文件
(1)设置扩展路径
查找 extension_dir 有这么一行
extension_dir = "./"
将此行改成
extension_dir = "C:/php5/ext"
其中C:/php5是你安装php的路径.路径不正确将无法加载dll
(注意:有些php版本是 ;extension_dir = "./" 要把前面的分号去掉)
(2)查找
;extension=php_mbstring.dll
;extension=php_gd2.dll
;extension=php_mysql.dl
把上面3项前面的分号去掉,这样apache启动时就可以加载这些dll了
当然前面我们也把这些dll复制到system32下了.(大家在安装的过程中都注意到如何把一些dll加载入来了.
以后要加载一些dll,比如说php_mysqli.dll,也就懂得怎么加载了)
(3)设置会话保存路径
查找session.save_path 有这么一行
; session.save_path = "N;/path"
在此行后加入一行(注意是加入一行,不是加到后面)
session.save_path = "C:/WINDOWS/Temp"
保存到你的临时目录下,这里完全可以保存到windows临时目录Temp下
(4) 还有比较值得注意的是 short_open_tag .有一些php版本默认是Off的.
也就是说 php不能使用短标记如 <? ?> 必须使用<?php ?>
由于短标记使用方便,并且很多程序也是用短短标记来写,如discuz等
如果不把 short_open_tag 改成On将出现的症状将很难判断是上面原因,这里建议修改
查找
short_open_tag = Off
改为
short_open_tag = On
(5)是否显示错误 display_errors
出于安全性考虑,display_errors 有些版本也默认为 Off.
就是说在调试时,如果php代码有误,就只出现一个空白页.而不会显示出错原因和出错行数.
这样调试起来将非常不便,建议根据自己需要修改
查找
display_errors = Off (注意不是 ; - display_errors = Off [Security])
改成
display_errors = On
(6) register_globals
出于安全性考虑它默认也是Off
当register_globals=Off的时候,下一个程序接收的时候应该用$_POST['user_name']和$_POST['user_pass'])
当register_globals=On的时候,下一个程序可以直接使用$user_name和$user_pass来接受值.
建议根据自己需要修改
(7)php5时差问题
<?php echo date("Y-m-d H:i:s");?>时间相差八小时
为什么呢?PHP5系列版本新增了时区设置,默认为格林威治时间,与中国所在的东8区正好相差8个小时
查找date.timezone有这么一行
;date.timezone =
将;去掉,改成
date.timezone = PRC
其中PRC:People's Republic of China 中华人民共和国,
//****************
6、Apache整合PHP
(1)从开始菜单打开apache配置文档,如图
(2)修改网站根目录
查找DocumentRoot有这么一行
DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs"
这就是你网站的根目录,你可以修改,也可以用默认的.如果改,还要修改下面这项,否则可能会出现 403 错误
查找 This should be changed to whatever you set DocumentRoot to
在它下面两行有
<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs">
把上面两项的 C:/Program Files/Apache Group/Apache2/htdocs 改成你想要的目录
(3) 查找 DirectoryIndex index.html
修改成
DirectoryIndex index.html index.html.var index.php
这样index.php 可以充当默认页面了
(4)Apache中模块化安装php
查找 # LoadModule foo_module modules/mod_foo.so
在此行后加入一行
LoadModule php5_module C:/php5/php5apache2_2.dll
(其中C:/php5/php5apache2_2.dll是你安装php的相应路径.
注意不要把php5apache2_2.dll,php5apache2.dll和php5apache.dll混淆.php5apache.dll只适用于apache 版本1的.
PHP5压缩包里的php5apache2.dll只适用于apache2.0.*版本,如果是2.2.*以上版本,必须使用php5apache2_2.dll.否则就可能会出现
"Cannot load C:/php/php5apache2.dll into server: The specified module could not be found."
或者:
"The requested operation has failed"
的情况.
不过php5apache2_2.dll出来之后也就没有多少参考价值了)
(5)查找 AddType application/x-gzip .gz .tgz
在此行后加入一行
AddType application/x-httpd-php .php
这样apache就可以解释php文件了
到这里配置基本完成了
重启apache.在网站根目录下创建一个 phpinfo.php 文件:
<?php
phpinfo();
?>
在浏览器打开
http://localhost/phpinfo.php
如果出现如下信息,则说明php已经配置好了
下面再测试php和mysql数据库的关联
在网站根目录下创建一个test.php 文件
<?php
$link=mysql_connect("localhost","root","12345"); //12345改成你的mysql密码
if(!$link) echo "失败!";
else echo "成功!";
mysql_close();
?>
在浏览器打开 http://localhost/test.php
如果输出成功,则说明大功告成了.
//****************
7、ZendOptimizer 的安装
Zend Optimizer用优化代码的方法来提高PHP应用程序的执行速度。执行使用Zend Optimizer的PHP程序比不使用的要快40%到100%。而且一些用Zend SafeGuard 加密过的文件,必须装了Zend Optimizer才可以运行.
(1)点击安装Zend Optimizer
(2)接受协议,点击next
(3)选定安装路径
(4)选定apache本版,我们用的是apache2.2.4,所以这里选 apache2.x
(5)选定 php.ini 的位置.我们的是在 C:/WINDOWS/ 下
(6)选定apache安装路径.我们的是C:/Program Files/Apache Software Foundation/Apache2.2 .所以要修改过来
(7)点击install进行安装
(8)点击 是.安装程序自动完成配置和服务器重启.
(9)点击 Finish 完成安装
//****************
8、安装 phpMyAdmin
下载得到phpMyAdmin - 2.10.2-rc1.zip,将其解压到 你网站根目录下并重命名为phpMyAdmin,
找到 phpMyAdmin/libraries/config.default.php 复制文件并且重命名为phpMyAdmin/config.inc.php
做以下修改:
(1) 查找 password 有如下三行,设置验证方式、用户名和密码
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
(2) 搜索 $cfg['PmaAbsoluteUri'],将其设置为 phpMyAdmin 目录路径,如:$cfg['PmaAbsoluteUri'] = 'http://localhost/phpMyAdmin/';
(3) 搜索 $cfg['DefaultLang'],将其设置为:
$cfg['DefaultLang'] = 'gb2312';
(4) 搜索 $cfg['DefaultConnectionCollation'] ,将其设置为:
$cfg['DefaultConnectionCollation'] = 'latin1_swedish_ci';
(5) 搜索 $cfg['DefaultCharset'],将其设置为:
$cfg['DefaultCharset'] = 'gb2312';
参考:
http://www.phpfans.net/bbs/forumdisplay.php?fid=3