一直对开源的PHP、Apache和MySQL的相关技术非常感兴趣,最近一直在学,边学边记录,想法是整理成一个连载序列。这样对自己的学习起到加强的帮助作用,同时也希望对遇到同样问题的同道中人有所帮助。
说明:所写的这些内容,包括问题及解决办法都是我自己一步一步走过来的,至少在我自己的环境里是成功了的,而且遇到的问题也都解决了的。
Apache、PHP、MySQL的安装和配置:
(1)Apache的安装
在主页下载最新的Apache HTTP Server 2.2.17,选默认安装即可,也可以选择安装在自己指定的目录。
配置文件在Apache的安装目录下的conf/httpd.conf;默认的文档目录为Apache的安装目录下的htdocs目录。
默认文档目录可以修改。修改方法如下,打开配置文件httd.conf,查到到DocumentRoot一项,将后面的目录改为自己设置的文档目录即可。如改为:"E:/wwwroot"等。注意:路径上所有的"/"都要改为"/"。
Apache安装成功的测试:在浏览器中输入http://localhost/或者http://127.0.0.1,如果出现It works!页面(或类似的内容),表示Apache已配置成功。
http://localhost/访问不成功,但http://127.0.0.1访问成功的可能问题:查看C:/Windows/System32/drivers/etc/hosts文件中是否有localhost 127.0.0.1的映射,如果没有,加上即可。
(
2)PHP的安装及与Apache的配置:
在官方网站上下载PHP的最新Windows版本,这里注意版本的选择,在Windows的下载页左边有一个“which version do I choose"的提示,因为我们使用的是Apache而不是IIS,所以选择VC6的版本,下载VC6的Thread Safe版(线程安全版和非安全版的区别,Google之),而且要下载Zip文件,不要下载Installer文件。版本一定要选择对,否则,后面的配置会很有问题,因为不同的版本,其中包含的文件有差异。
将下载好的php 5.3.5的Zip文件解压到自己指定的目录中,如我是放在E:/php。
PHP的配置文件在其安装目录里,将php.ini-production复制并重命名为php.ini,即为php的配置文件。php的配置文件需要修改和注意的地方有以下几点(打开php.ini):
1)
short_open_tag:启动这个命令,就可以使用短标记<?表示php代码的开头,而不是必须使用默认的<?php标记。所以将其值设为On。(On的O大写)
2)
register_globals:这个值是用来打开全局变量的,比如表单传过来的值,如果设为Off,则只能用$_POST['变量名']和$_get['变量名']来获取传过来的值;如果设为On,就可以直接使用$变量名获取传值了。显然,设为Off比较安全,不会让人轻易将网页间传送的数据截取。这个值是否修改,根据自己的需要。
3)扩展模块(
extension):搜索到extension部分,发现大部分的扩展都被注释掉了,如果需要加载那个扩展,去掉注释即可。因为要配置MySQL,所以extension=php_mysql.dll应该加载,但是因为现在是配置Apache和PHP,所以现在不加载也不会影响PHP和Apache的配置。
4)启用了extension后,就要指定加载extension的目录,在php.ini中找到extension_dir,将后面的目录改为php的安装目录下的ext目录,如我的是"E:/php/ext"。
将php以module方式与Apache结合,需要配置Apache的配置文件httpd.conf,打开:
1)找到LoadModule的区域,在最后加上:
LoadModule php5_module "E:/php/php5apache2_2.dll"
这里说明一下:后面的那个目录要改为自己安装php的目录;其次,因为我用的是PHP5.3,所以应该是那个php5apache2_2.dll,而不是php5apache.dll或php5apache2.dll,这里请注意。
2)找到<IfModule mime_module>:在其结束对</IfModule>之前加上:
AddType application/x-http-php .php
AddType application/x-http-php .html
这样设定后,这台服务器就认为.php、.html都是有效的PHP脚本文件后缀。也就是说在这些文件中嵌入php的指令和标记是可以被解析的,否则不能解析。
3)最后,在配置文件的最后,添加php配置文件的所在目录,即添加:
PHPIniDir "E:/php"
注意改为自己的安装目录。
这样基本上就配置完了,测试Apache和PHP是否配置成功的方法:
新建一个test.php文件,其中内容为:<?php phpinfo(); ?>
将文件放在Apache的文档目录中,默认即Apache安装目录下的htdoc下。然后在浏览器中输入http://localhost/test.php,如果页面出现php的详细信息,则表示配置成功。
(3)MySQL的安装及配置:
下载最新版的MySQL_essential_5.1.msi,安装过程中的一些选项说明如下:
1)选择custom,将画X的Developer Component完全安装。
2)配置:Detailed Configuration->Server Machine->Transactional Database Only,选择InnoDB的安装目录->Online Transaction Processing(OLTP)->Enable TCP/IP Networking,3306 port ->Manual Selected Default Character Set/Collation(gbk) -> Install As Windows Service、Include Bin Directory in Windows PATH -> root password。至此,配置完毕。
3)常见的问题:如果机器之前暗转过MySQL,卸载了,这次重新安装,提示不成功,因为之前的安装的密码还有效,所以无法登录进去。这种情况,如果记得之前安装时的密码,则可以暂时退出,重新配置,在账户设定时,修改密码。如果原来的密码忘了,只能将原来的安装彻底卸载,在重新安装了。
在安装的过程中,如果出现错误,可以打开"
事件查看器(Event Viewer)"查看"事件日志(Event log)",上面详细记录着错误的信息,及可能出错的地方或原因。
参考文献: