本文转自:http://hi.baidu.com/guolaiba/item/acb9eadc385d5af193a974be
Win7 64位操作系统下配置PHP+MySql+Apache环境
注:
1./* */ 之间的为步骤或注释,不要粘到配置文件内 2.Apach配置时是用的“/”,而php配置时用的是“\”,一定要区分好 3.如何你自定义了安装目录,请自行将下面的用到的目录进行对应更改
一、安装软件准备
软件版本以本人安装为例,其他版本同理,软件可到各官网下载,也可Q我:495517252 1、Apache(httpd-2.2.19-win64) 2、PHP(php-5.3.6-Win32-VC9-x64) 3、MySQL(MySQL_5.5.13_winx64)
二、安装Apache
1、64位的Apache不同于32位打包成exe文件可直接安装,先把httpd-2.2.19-win64解压到“D:\server”目录下 /*若没有server目录就创建后再解压*/
2、以管理员身份运行 命令提示符(开始-程序-附件),然后进入“D:\server\httpd-2.2-x64\bin”目录 /*步骤,开始-->程序-->附件-->右击打开“命令提示符”,输入“D:”回车-->输入“D:\server\httpd-2.2-x64\bin”回车*/
3、执行 httpd -k install /*即输入 httpd -k install 下面遇到执行***,也同此处*/
正确的结果如下 : /*若出错请看,执行:“控制面板”-->“用户账户”-->“更改用户账户控制设置”,改成从不通知(即拉到下头),完成后会提示重启,此时需要重启一下,记得整个过程装完后改回!!*/
4、修改“D:\server\httpd-2.2-x64\conf\httpd.conf”的配置信息,这里跟32位系统里配置一样
(1)用记事本或其它文本编辑工具打开“D:\server\httpd-2.2-x64\conf\httpd.conf”
(2)转到第35行,/*小提示:用记事本修改的话可以使用“Crtl+g”转到指定行*/ 修改为ServerRoot "D:/server/httpd-2.2-x64" /*直接粘过去替换即可,下面也一样*/ (3)转到第129行,会看到apache开启的功能模块如:#LoadModule vhost_alias_module modules/mod_vhost_alias.so
模块其后添加:
LoadModule php5_module "D:/Server/php-5.3.6-Win32-VC9-x64/php5apache2_2.dll"
PHPiniDir "D:/Server/php-5.3.6-Win32-VC9-x64"
AddType application/x-httpd-php .html .htm .php /*将上面三行粘到第129~131行即可*/
(4)转到第182行,设置网页文件存放目录,我的存在在“D:\htdocs”
设置为 DocumentRoot "D:/htdocs" /*此步请按自身的实际存在目录进行设置*/
此行修改要与第209行目录设置相对应 所以第209行对应修改为 <Directory "D:/htdocs">
5、再次在 命令提示符 执行httpd -k start 没有错误即apache服务启动成功 结果如下:
//如果出错,请转到下面的“关于关掉占用”,然后再次执行httpd -k start 正常的话,进入下一步的php配置
三、配置PHP
1、将“php-5.3.6-Win32-VC9-x64.zip”解压到“D:\server\php-5.3.6-Win32-VC9-x64”,若目录不存在请先创建后再解压。
即对应上步在Apache中设置的LoadModule位置
2、将“D:\server\php-5.3.6-Win32-VC9-x64\”下的“php.ini-development”修改成“php.ini” /*注意php.ini为改名后的全名,包含后缀名*/
3、转到第531行, 修改为 display_errors = Off /*此处控制是否显示php错误,默认开启提示,建议在网站上线前调为Off*/
4、转到第807行, 修改为 extension_dir = "D:/server/php-5.3.6-Win32-VC9-x64/ext/" 即php文件所在目录下/ext /*注意前面的“;”已被去除*/
5、找到扩展列表,;extension=php_gd2.dll、;extension=php_mysql.dll、;extension=php_mysqli.dll将其前面的”;”去掉即为开启该扩展,
你也可根据功能需求不同开启相应扩展,方法同此 /*它们分别在第950、959、960行*/
6、(可选)date.timezone的值设为Asia/Shanghai即date.timezone =Asia/Shanghai /*位置在第997行*/
四、安装MySql
1、双击MySQL安装包,点击Next。
2、选中“I accept the terms in the License Agreement”,点击Next。
Choose Setup Type(选择安装选项),有三种:Typical(典型), Custom(自定义) , Complete(完全)。
这里我们选Custom,然后点击Next。
3、Custom Setup(自定义安装设置),这里依然点击倒三角选择"Entire feature will be installed on local hard drive"把所有的全部安装上去,
然后点击下面的Change按钮,选择安装位置后,点击Next。
注意:一定要检查所有选项安装位置,最好都装在同一个位置。我这里为了省事起见未做修改。
/*此处共有6个条目但只需更改第1个和第6个的安装位置,其它条目会自动调整过去的。--建议新手可以不做更改*/
4、Ready to Install the Program(准备安装程序),观察中间的设置,确定无误后,点击Next,否则,点击Back后修改。
5、在安装的过程中会出现一个新窗口,是给MySQL Enterprise(MySQL企业版)打广告的,忽视掉,一直Next,点的慢些(不是直接点Finish),
直到出现FInish界面。 //此时先看下一条,不要乱点。
6、Wizard Complete(安装向导完成),点击Launch the MySQL Instance Configuration Wizard(启动mysql配置向导)前面的复选框(默认是勾选,不关管它),
然后点击Finish,这样就进入了MySQL配置界面。
7、不用说,点击Next。
8、选择配置方式(Please select a configuration type)。
这里出现了两种选项,一种是Detailed Configuration(详细配置),一种是Stardard Configuration(标准配置),
这里我们选择Detailed Configuration,然后点击Next。
9、选择服务器类型(Please select a server type)。
有三种选项:Developer Machine(开发测试用),Server Machine(服务器用),Dedicated MySQL Server Machine(专门的服务器用),
由于我是用来开发的,所以选择了第一项,然后点击Next。
10、选择数据库用途(Please select a database usage)。
有三种:第一种是Multifuctional Database,第二种是Transactional Database Only,第三种是Non-Transactional Database Only,
这儿三个选项的区别我也不怎么理解,但依照英文注释以及网上其他的帖子参考就选择了第一项Multifuctional Database,然后点击Next。
11、选择InnoDB数据库文件存储位置(Please select the drive for the InnoDB datafile),默认是安装的MySQL位置。保持默认,直接点击Next。
12、选择同时连接到服务器的准确访问量(Please set the approximate number of concurrent connections to the server)。三个选项:第一个是Decision Support(DSS)/OLAP(大约20个),第二个是Online Transaction Processing(OLTP)(大约500个),第三个是Manual Settings(手动设置),由于我是为了开发测试用,所以选择第一个就可以了,然后点击Next。
13、网络选项(Please select the networking options)。第一个是是否启用TCP/IP连接,选上,第二个是启用严格模式(Enable Strict Mode),我选了,建议新手选上,这样代码更规范些,然后点击Next。
14、选择默认字符集(Please select the character set)。第一个是Stardard Character Set(标准字符集),默认是Latin1,适合存储英文;第二个是Best Support for Multilingualism(最适合多语言),默认是utf8,适合存储多语言字符集;第三个是手动选择。这里我们选择UTF8编码,即选择第二种或者第三种中的UTF8,然后点击Next。 15、设置windows选项(Please set the windows options)。第一项是是否安装为Windows服务(Install As Windows Service),建议勾选上,下面的Service Name是服务器标识名称,默认即可,还有个是否随机启动MySQL的选项,如果没选的话,以后开启MySQL需要在cmd上输入net start mysql。第二项是是否把bin文件夹路径加入环境变量中的Path(Include Bin Directory in Windows PATH),建议勾选,这样以后可以直接在cmd上输入bin文件夹上的任意一个文件使用,然后点击Next。
16、安全选项(Please set the security options)。第一项是修改安全设置(Modify Security Settings),这项中的两项分别是新root密码和确认输入的密码(即再输入一遍),最下面的是创建一个匿名帐号(Create An Anonymous Account),先选上,回头安装完记得去除,然后点击Next。
/*此步出错的几率有点大,出错原因可能是端口被占,也可能是密码有误,但这些错误这在个界面并不会提示,如果后面的步骤提示:ERROR 1045请参照下面方法,然后从步骤1开始重装mysql,没有则跳过。
//关于修改root密码
1) 以系统管理员身份登录到系统;
2) 如果MySQL服务器正在运行,停止它。
3) 如果是作为Windows服务运行的服务器,进入服务管理器:开始菜单->控制面板->管理工具->服务找到MySQL服务停止它。
4) 如果服务器不是作为服务而运行的,可能需要使用任务管理器来强制停止它。
5) 创建1个文本文件,并将下述命令置于单一行中: SET PASSWORD FOR = PASSWORD('MyNewPassword');
6) 用任意名称保存该文件。在本例中,该文件为C:\mysql-init.txt。
7) 进入DOS命令提示:开始菜单->运行-> cmd
8) 假定你已将MySQL安装到C:\mysql。如果你将MySQL安装到了另一位置,请对下述命令进行相应的调整。 在DOS命令提示符下,执行命令: C:\mysql\bin\>mysqld-nt --init-file=C:\mysql-init.txt
9) 在服务器启动时,执行由”--init-file”选项(作用:在启动时从指定的文件中读取SQL命令)命名的文件的内容,更改根用户密码。当服务器成功启动后,应删除C:\mysql-init.txt。 //关于关掉占用 开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选"查看"-"选择列"
在windows命令行窗口下执行:
1)查看所有的端口占用情况 C:\>netstat -ano
2)查看指定端口的占用情况 C:\>netstat -aon|findstr "3306" //3306为端口号
3)查看PID对应的进程 C:\>tasklist|findstr "2016" //2016为PID 4)结束该进程 C:\>taskkill /f /t /im tor.exe //tor.exe为具体进程 备注: tasklist taskkill命令在xp下有效 */
17、准备执行刚才的设置(Ready to execute),确定无误后,点击Execute。过一会执行完成后,点击Finish结束设置。
18、打开mysql的安装文件夹,在lib文件夹内找到libmysql.dll,将其拷贝到系统的system32文件夹中,然后重启Apache。/*我采用的是默认安装,所以我的源文件位置在C:\Program Files\MySQL\MySQL Server 5.5\lib\,若自定义了安装目录请自行调整*/
19、在D:/ htdocs/下创建一test.php文件,内容为 <?php phpinfo(); ?> 然后在浏览器地址栏中输入http://localhost/test.php 看到如下图示信息表示配置成功,下图标红处若为“(none)”则请检查上面的步骤是否有遗漏/*记得将浏览器语言调整成utf-8*/
20、最后,在站点目录下修改index.php:
<?php
$host='localhost';
$user_name='root';
$password='****';//这里****是你设置的密码
$conn=mysql_connect($host,$user_name,$password);
if (!$conn) {
die('数据库连接失败:'.mysql_error());
} echo '数据库连接成功!';
if (mysql_close($conn))
{ echo '<br/>...<br/>';
echo '到数据库的连接已经成功关闭'; }
?>
然后在浏览器上输入http://localhost,若出现如下字样: 数据库连接成功! ...
到数据库的连接已经成功关闭 则表明一切大功告成!
不少文章都没有第18步,让许多新人很是困扰(步骤全照做还是不成功).当初我也被困扰了一周之久,网上的资料都是说把php.ini复制到系统盘,可是依然无用。。。
最后祝大家都能有个多心情!!!