最近看了一些教科书,可能是印刷的缘故,只是一个空格没有打印,再加上网上的很多博客文章只是顺手转载,并没有仔细的检查,还有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:

关键查询"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

Apache和PHP的安装的更多相关文章

  1. Linux+apache+mono+asp.net安装教程

    Linux+apache+mono+asp.net安装教程(CentOS上测试的) 一.准备工作: 1.安装linux系统(CentOS,这个就不多讲了) 2.下载所需软件 http-2.4.4.ta ...

  2. Apache Hadoop2.x 边安装边入门

    完整PDF版本:<Apache Hadoop2.x边安装边入门> 目录 第一部分:Linux环境安装 第一步.配置Vmware NAT网络 一. Vmware网络模式介绍 二. NAT模式 ...

  3. 虚拟机+apache+php+mysql 环境安装配置

    虚拟机的安装:直接下一步即可,注意修改路径. 安装完成后新建虚拟机,直接下一步.如果选择镜像文件后出现错误,可以试着去修改电脑bios中的虚拟化设置,改为enable,如下图: apache安装: 1 ...

  4. Ubuntu杂记——Apache+PHP+MySQL的安装

    昨天晚上,参考博客园的另一篇文章,在自己的Ubuntu上搭建了一个Apache+PHP+MySQL的服务器,在此谨记,以备不时之需. 一.安装Apache sudo apt-get install a ...

  5. Apache源码包安装和子配置文件介绍--update.2014-12-5

    安装apache: 官网:http://httpd.apache.org/download.cgi#apache24 1.wget http://mirror.bit.edu.cn/apache//h ...

  6. LinuxMint下Apache Http源码安装过程

    1. 源码包下载 Apache Http安装要求必须安装APR.APR-Util.PCRE等包. Apache Http包下载地址:http://httpd.apache.org/download.c ...

  7. Apache和mysql的安装设置

    Apache和mysql的安装较简单,主要是安装前请保证80端口未被占用 比如 iis 以前安装过的apache mysql 先停止运行phpmyadmin,主要是配置文件的问题,把phpMyAdmi ...

  8. Apache Tomcat下载、安装、配置图文教程

    本文已迁移到我的个人网站 http://www.wshunli.com 文章地址: http://www.wshunli.com/2016/03/19/Tomcat安装配置/ (整理截图.安装过程更加 ...

  9. Apache+php配置 Mysql安装出错解决办法

    此文包括的注意内容:软件版本及下载地址Apache2.4的配置和安装php7.0的配置mysql5.5的安装常见问题及解决方法1.软件版本Windows server 2008 r2+ 64位Apac ...

  10. windows系统SVN和apache的下载和安装

    原文:windows系统SVN和apache的下载和安装 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://ejb3.blogbus.com/logs/107443052. ...

随机推荐

  1. -[UIKeyboardLayoutStar release]: message sent to deallocated instance

    网上大家都说是因为替换了系统的objextAtIndex方法,但是为了减少应用崩溃的可能,是要进行Hook的,所以不想取消Hook. 解决办法,关掉键盘进入后台. - (void)applicatio ...

  2. Mixing ASP.NET and MVC routing

    Here is the solution I settled on. I installed the NuGet Microsoft.AspNet.FriendlyUrls package. Then ...

  3. 表达式拼接Expression<Func<IEntityMapper, bool>> predicate

    /// <summary> /// 重写以筛选出当前上下文的实体映射信息 /// </summary> protected override IEnumerable<IE ...

  4. java语言一维数组,对象数组

    /** * 对象数组的使用 */package com.test5; import java.io.BufferedReader;import java.io.InputStream;import j ...

  5. MongoDB设置访问权限、设置用户(转)

    MongoDB已经使用很长一段时间了,基于MongoDB的数据存储也一直没有使用到权限访问(MongoDB默认设置为无权限访问限制),今天特地花了一点时间研究了一下,研究成果如下: 注:研究成果基于W ...

  6. [EWS]在exchange中的标识符

    摘要 最近在用ews的方式开发邮箱服务,包括写邮件,查看某封邮件的详情,回复,全部回复及转发功能.在获取收件箱的时候,关于唯一标识符的问题.也有点困惑,在每个邮件item中,存在一个changeKey ...

  7. LINUX命令总结 -------来自 水滴娃娃 的CSDN

    LINUX命令总结 标签: LINUX命令总结 2014-01-27 15:54 41039人阅读 评论(1) 收藏 举报  分类: linux(1)  版权声明:本文为博主原创文章,未经博主允许不得 ...

  8. vim查找替换

    http://www.cnblogs.com/ltang/articles/2034291.html %: 表示百分百,表示所有 行的意思... 如果不指定行号, 则表示当前行; g: 表示一行中的所 ...

  9. ASP.NET中gridview获取当前行的索引值

    在用GridView控件时,我们经常会碰到获取当前行的索引,通过索引进行许多操作.例如,可以获得当前行某一个控件元素:设置某一元素的值等等.下面结合实例介绍几种获得GridView当前行索引值的方法. ...

  10. python简明手册学习

    1.行末单独一个反斜杠表示字符串在下一行继续,而不是开始一个新的行. >>> "This is the first sentence.\ ... This is the s ...