Windows Apache2.2.11及Php5.2.9-1的安装与配置方法


Posted in PHP onJune 08, 2009

因为pharmar用的是Mcafee的杀毒软件,要求所有程序均要安装于Program Files,所以这些文件均放于D:\Program Files下便于管理。Mcafee写防护规则时好运用。
 Apache的安装与配置

打开apache官方网站 http://archive.apache.org/dist/httpd/binaries/win32/ 或者镜像网站 http://apache.mirror.phpchina.com/httpd/binaries/win32/,下载里面的apache_2.2.11-win32-x86-no_ssl.msi安装文件。其中,同一版本有两种类型:no_ssl和openssl,openssl多了个ssl安全认证模式,它的协议是HTTPS而不是HTTP,这就是带有SSL的服务器与一般网页服务器的区别了。一般情况下,我们下载no_ssl版本的就ok了。

下载好apache安装文件后,点击安装,在连续3次next后,将进入server information配置界面,要求输入network domain、server domain和网站管理员的邮箱地址,普通用户可以随便按照格式填一下就行了。再次按Next后,出现选择安装路径的界面,默认的路径比较长,pharmar把安装路径修改为:“D:\Program Files\Apache\”,继续安装,直到完成。

安装完毕,apache就自动启动,可以测试apache是否成功启动。在浏览器地址栏里输入:http://localhost/或http://127.0.0.1/,如果出现“It works.”,那么恭喜你,apache已经成功安装了;同时在电脑右下角的任务栏里有一个绿色的apache服务器运行图标。

apache还有一个配置文件:httpd:conf 需要配置,以便php运行。位置为:D:\Program Files\Apache\conf目录里。打开httpd:conf:
1)、查找“DocumentRoot”,这里是指定主页放置的目录。默认是:“D:\Program Files\Apache\htdocs”,你可以使用默认的目录,也可以自己定义一个,如:“D:/PHP”。注意:目录末尾不要加“/”。
2)、查找“DirectoryIndex”,这里是默认首页文件名,可以在index.html 的后面加入index.php等。每种类型之间都要留一个空格。
3)、查找
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
修改为:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
allow from all
</Directory>
如果不改这里的话,可能会出现 You don't have permission to access / on this server. 这样的错误提示,尤其在改变了默认主页的路径后。

注意:每次修改httpd:conf文件后,都要重启apache服务器。另外,如果你的win32系统上同时也运行iis服务器,那么就要先停止iis服务器的运行,然后再启动apache,否则apache服务器无法启动。

Php的安装与配置方法

首先从php的官方网站http://www.php.net/downloads.php 下载windows版本的,有两种版本:PHP 5.2.9 zip package和PHP 5.2.9 installer,目前最新版本就是5.3.0,pharmar使用的是5.2.9版本。PHP 5.2.9 installer为自动安装方式,虽然比较自动化,但在很多方面受到限制,因此pharmar不推荐使用这种方式,下面介绍PHP 5.2.9 zip package压缩包方式下的手动安装。

1)、将PHP的压缩包zip解压到一个目录下,推荐:“C:/PHP”,pharmar的是D:\Program Files\Php。
2)、将PHP目录(D:\Program Files\Php)下的 php.ini-dist 文件重命名为 php.ini,PHP的配置文件就是它,修改以下几个地方,修改好后把 php.ini 文件复制到 C:\WINDOWS\ 目录里:
extension_dir="D:\Program Files\Php\ext" ,指向php文件夹下放置“php_*.dll”文件的路径。PHP4和PHP5的路径在这里有所区别。
doc_root="D:\PHP" ,指向前面apache设置的首页位置;
default_charset="gb2312" ,修改默认字符集,这里,如果前面有分号“;”,去掉这个分号;
register_globals=Off 改为 register_globals=On ,使传递全局变量有效;
extension=php_dba.dll 如果前面有分号,取消分号,以下同;
extension=php_dbase.dll
extension=php_gd2.dll GD库做图,一般用于图形验证码;
extension=php_mysql.dll 用于连接MYSQL数据库;
3)、将PHP目录下的 php5ts.dll 文件拷贝到 C:\WINDOWS\system32 目录。
4)、最后修改 Apache 的 httpd.conf 文件。在该文件的末尾添加如下2行,表示以模块方式安装PHP进入Apache:
LoadModule php5_module D:/Program Files/Php/php5apache2_2.dll
AddType application/x-httpd-php .php

注意:第一行的目录路径要更新为当前版本的apache动态链接库,比如这里我使用的是apache2.2.11版本和php5.2.9,那这个文件必须是php5apache2_2.dll,而不能是php5apache.dll、php5apache2.dll等。第二行为php脚步的后缀。
php4版中,需要添加一行 AddType mod_php4.c,而在php5中,就不需要这样的一行 AddType mod_php5.c了,php5已经集成,否则 apache 启动不了。

以上就完成了apache和php的配置过程了,重启apache。在服务器的默认目录“D:\Program Files\Apache\htdocs”里新建文件index.php,写上如下代码:
<?php
phpinfo();
?>
在浏览器地址栏里输入 http://127.0.0.1/ 或 http://localhost/ ,你就会看到php版本信息了。到此为止,php和apache就已经成功的安装了。

这里有个细节:apache的配置文件 httpd.conf 中的目录分割符号是“/”,而 PHP 的配置文件 php.ini 里的目录则要求是反斜线 “ \”,不要搞混了哦。

MYSQL的安装就简单了。到官方网站 http://dev.mysql.com/downloads/mysql/5.0.html,下载windows平台下的 mysql ,选择 Windows ZIP/Setup.EXE (x86) 最新版本是 5.0.77 ,下载即可。直接安装,安装完成后,可以进入配置向导,设置mysql数据库密码。一切OK。
关于mysql的安装与配置见:phpMyAdmin安装配置方法和问题解决

pharmar安装过程中遇到的错误:
在 Windows 下安装 PHP 后 Apache 出现 LoadModule takes two arguments 的错误,这个主要原因就是httpd.conf中的这句:
LoadModule php5_module D:\Program Files\PHP\php5apache2_2.dll
解释程序把Program Files中的空格当成了两个参数的分隔符号,因此语句中不能出现空格。在网上找了半天也没找到解决方法,最后用一级目录符号才解决问题,改成如下:
LoadModule php5_module ../php/php5apache2_2.dll
因为apache安装在D:\Program Files\Apache\目录下,PHP安装在D:\Program Files\php\,因此../就表示D:\Program Files\目录,这个终于搞定了,希望大家在安装与配置过程中多动动脑筋总会有办法的。

PHP 相关文章推荐
PHP脚本的10个技巧(6)
Oct 09 PHP
用php将任何格式视频转为flv的代码
Sep 03 PHP
PHP array_multisort() 函数的深入解析
Jun 20 PHP
destoon切换城市后实现logo旁边显示地区名称的方法
Aug 21 PHP
Linux安装配置php环境的方法
Jan 14 PHP
php利用imagemagick实现复古老照片效果实例
Feb 16 PHP
PHP实现将标点符号正则替换为空格的方法
Aug 09 PHP
php实现生成带二维码图片并强制下载功能
Feb 24 PHP
thinkPHP框架实现类似java过滤器的简单方法示例
Sep 05 PHP
Laravel 对某一列进行筛选然后求和sum()的例子
Oct 10 PHP
php判断数组是否为空的实例方法
May 10 PHP
php访问对象中的成员的实例方法
Nov 17 PHP
Windows IIS PHP 5.2 安装与配置方法
Jun 08 #PHP
PHP 组件化编程技巧
Jun 06 #PHP
PHP加速 eAccelerator配置和使用指南
Jun 05 #PHP
php 更新数据库中断的解决方法
Jun 05 #PHP
php split汉字
Jun 05 #PHP
phpinfo 系统查看参数函数代码
Jun 05 #PHP
PHP 字符串 小常识
Jun 05 #PHP
You might like
PHP新手NOTICE错误常见解决方法
2011/12/07 PHP
JavaScript高级程序设计 读书笔记之十 本地对象Date日期
2012/02/27 Javascript
解决json日期格式问题的3种方法
2014/02/02 Javascript
仿JQuery输写高效JSLite代码的一些技巧
2015/01/13 Javascript
JavaScript设计模式学习之“类式继承”
2015/03/12 Javascript
原生js实现模拟滚动条
2015/06/15 Javascript
javascript性能优化之事件委托实例详解
2015/12/12 Javascript
详解JavaScript实现设计模式中的适配器模式的方法
2016/05/18 Javascript
js实现简易垂直滚动条
2017/02/22 Javascript
js 调用百度分享功能
2017/02/27 Javascript
详解vuejs几种不同组件(页面)间传值的方式
2017/06/01 Javascript
JavaScript之class继承_动力节点Java学院整理
2017/07/03 Javascript
vue实现滑动切换效果(仅在手机模式下可用)
2020/06/29 Javascript
layer.open 子页面弹出层向父页面传输数据的例子
2019/09/26 Javascript
vue实现购物车功能(商品分类)
2020/04/20 Javascript
javascript实现打砖块小游戏(附完整源码)
2020/09/18 Javascript
javascript实现左右缓动动画函数
2020/11/25 Javascript
跟老齐学Python之print详解
2014/09/28 Python
Linux下用Python脚本监控目录变化代码分享
2015/05/21 Python
Python实现的基数排序算法原理与用法实例分析
2017/11/23 Python
Python实现去除列表中重复元素的方法总结【7种方法】
2019/02/16 Python
windows系统中Python多版本与jupyter notebook使用虚拟环境的过程
2019/05/15 Python
Django框架下静态模板的继承操作示例
2019/11/08 Python
Pytorch 的损失函数Loss function使用详解
2020/01/02 Python
python实现斗地主分牌洗牌
2020/06/22 Python
浅谈TensorFlow之稀疏张量表示
2020/06/30 Python
python实现图书馆抢座(自动预约)功能的示例代码
2020/09/29 Python
CSS3中的注音对齐属性ruby-align用法指南
2016/07/01 HTML / CSS
护理工作感言
2014/01/16 职场文书
眼镜促销方案
2014/03/15 职场文书
人事行政经理岗位职责
2014/06/18 职场文书
2014离婚协议书范文
2014/09/10 职场文书
2015年语文教研组工作总结
2015/05/23 职场文书
2016教师国培研修感言
2015/12/08 职场文书
php中pcntl_fork详解
2021/04/01 PHP
Python道路车道线检测的实现
2021/06/27 Python