Apache和PHP的安装

时间:2021-04-25 16:40:27

最近看了一些教科书,可能是印刷的缘故,只是一个空格没有打印,再加上网上的很多博客文章只是顺手转载,并没有仔细的检查,还有php和apache之间的版本问题,害得我花了4,5小时的时间才搞定环境的搭配。学习过程中,也发现了log文件不容忽视的最用。

php的版本:php-5.2.17-Win32-VC6-x86.zip    apache的版本:httpd-2.2.25-win32-x86-openssl-0.9.8y

共享网址:http://pan.baidu.com/disk/home#list/path=%2F

php:

1)将php解压到自己要安装的路径,将该路径添加系统的环境变量和个人用户的环境变量Path中。

(win8)我的电脑--属性--高级系统设置--高级("环境变量")

2)复制php.ini-recommended文件,重命名为php.ini。打开修改其中的一些设置:

查找关键字:"extension_dir",将 extension_dir ="./" 修改为 extension_dir = PHP_DIR/ext,该路径下面放置的是一些php提供的模块。路径配置文件中路径分隔符建议用"/";

找关键字:"extension=php_mysql.dll"(对MySql的支持):去掉改语句前面的注释符号:";"。

可能我们在php文件中开启了对mysql模块的支持,extension_dir也是正确的,mysql数据库也正确的安装了,但是在运行含有访问mysql数据库的语句的php文件时,却出现的错误。在apache的logs的error.log中,会有相应的错误提示:undefined function mysql_connect()。这时候说明mysql模块是没有加载成功的(其他模块加载成功)。解决方法:

将php目录下的libmysql.dll复制到apache的bin目录下面,然后在apache的conf目录下的httpd.conf文件中,加入

LoadFile "PHP_DIR/libmysql.dll" ;

检测数据库连接的代码:

<?php
$link = mysql_connect('localhost', 'root', '923');//创建连接
// if(mysql_connect("127.0.1","root", "923") ){
// echo "连接成功";//如果链接成功了,输出成功,否则报错
// }
// else{
// echo "error";
// }
if($link){
echo "Hello the world!";//如果链接成功了,输出成功,否则报错
}
else{
echo "error";
}
// phpinfo();
?>

如果还有错,可能是版本的问题。

3)将改好的php.ini放到php的安装目录下。

 apache:

1)打开apache的安装包,在安装过程中,出现的需要填写的三个内容自己看着填。

2)找到"APACHE_HTTP_DIR/conf"目录下的httpd.conf文件,编辑:

关键子查询"listen":在安装的过程中,Apache的监听窗口根据自己的安装时候的选择可能是80或者8080,因为这两个端口都比较常用,可能会和其他的服务发生冲突,像IIS的默认端口为80,可以打开cmd窗口:输入netstat -ano|findstr "80" 查看是否被占用。我自己把listen的端口改为:listen 8888

3)在文件中找个自己觉得合适的地方,加入下面的语句,支持php模块:

LoadModule  php5_module "PHP_DIR/php5apache2_2.dll"
PHPIniDir "PHP_DIR"
AddType application/x-httpd-php    .php

上面橙色的".php"前面有个空格,我根据书上把他连这些,结果apache就启动不了了。

找到错误的方法:打开“APACHE_HTTP_DIR/logs”目录下的文件error.logs:

Apache和PHP的安装

关键查询"ServerRoot":自己的Apache的安装路径。

关键查询"IfModule dir_module":指令用于指定目录中默认的索引文件名称

<IfModule dir_module>
     DirectoryIndex index.html index.php
</IfModule>

关键查询"DocumentRoot":这个指定的是Web站点的访问目录。

蓝色的文件名根据自己PHP_DIR中的文件填写,安装包不一样,可能不太一样,像:php5apache.dll ....

编辑index.php文件,如下:

 <?php 

   phpinfo();

 ?>

放到Web站点的访问目录,在浏览器输入访问地址,看是否安装成功。我的输入的访问地址:http://localhost:8888/index.php