PHP模块化安装教程


Posted in PHP onJune 01, 2016

本文讲述了PHP模块化安装的方法。分享给大家供大家参考,具体如下:

PHP(Hypertext Preprocessor)这门虽然简单但功能却是非常强大的脚本语言,下面就 基于WindowsXP+sp2的操作平台下的 Apache2.0.53+php5.2.1安装及基本配置过程记录下来以供参考:

一、首先从各官方网站下载以下程序:

1. apache_2.0.53-win32-x86-no_ssl.exe
2. php-5.2.1-Win32.zip (二进制压缩包)

二、安装及配置过程:

1. 安装apache Web 服务器:

双击安装文件apache_2.0.53-win32-x86-no_ssl.exe 将其安装在 D:/Apache目录下(本人在D盘新建了Apache文件夹)下,

-------------------------------------------------------
+ 注意:安装过程可能会出现以下问题:
+ OS 10048通常每个套接字地址 (协议/网络地址/端口) 只允许使用一次:
+ make_sock: could not bind to address 0.0.0.0:80...” 一般是IIS占用了80端口引起的
+ 两种解决方法:
+ 1、打开 控制面板->服务 找到 IIS admin 的服务 关闭并禁用
+ 2、如果不想关闭IIS服务 可将apache使用的端口改成其它端口
+ 将apache2/conf/httpd.conf 中的Listen 80 改为 Listen (你要使用的端口) 如 Listen 8080
+ 不过这时在你访问你的apache 下的Web服务时 在域名后要加上端口号
+ 如: http://localhost:8080
-------------------------------------------------------

测试Apache 是否安装成功,将在浏览器中输入:http://localhost:8080/http://localhost 如果能够看到Apache的标志羽毛,则Congratulations!!!

2. 安装PHP:

将 php-5.2.1-Win32.zip里内容解压到D:/PHP(本人在D盘新建了PHP文件夹)里,找到 php目录里的 php.ini-dist 重命名为 php.ini 并拷到 windows目录里。再将D:/PHP目录里的php5ts.dll,libmysql.dll拷贝到系统目录(windows/systems32 下)。

配置apache里的httpd.conf

打开 D:/Apache2/conf/httpd.conf 这个文件
找到 AddDefaultCharset ISO-8859-1 将其改为 AddDefaultCharset GB2312 (让默认语言编码为简体中文)
找到 DocumentRoot "D:/Apache2/htdocs" 将其改为你的WEB目录(可不改)如我的为 DocumentRoot "G:/Web Project"
找到 DirectoryIndex index.html index.html.var 在后面加入 index.htm index.php

选择安装模式: 模块化模式安装 或 CGI模式安装 (选一样即可)

模块化安装配置

找到 #LoadModule ssl_module modules/mod_ssl.so 这行,在此行后加入一行:

LoadModule php5_module d:/php/php5apache2.dll

其中d:/php/php5apache2.dll 为你php目录中php5apache2.dll所在的位置

注: LoadModule php5_module d:/php/php5apache2.dll        
//注意:其中C:/php5/php5apache2.dll是你安装php的相应路径.不要把php5apache2.dll和 php5apache2 _2.dll混淆.

php5apache2.dll只适用于apache 2.0版本.

如 果是apache2.2.*或以上版本,就可能会出现 "Cannot load C:/php/php5apache2.dll into server: The specified module could not be found."或者:"The requested operation has failed"

找到 AddType application/x-gzip .gz .tgz 这行,在此行后加入一行

AddType application/x-httpd-php .php

CGI安装配置

找到 AddType application/x-gzip .gz .tgz 这行,加入如下即可:

ScriptAlias /php/ "d:/php/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php/php-cgi.exe"

注: CGI英文全称是 Common Gateway Interface,通常翻译为共同网关接口,是HTTP服务器与机器上的其他程序进行通信的一个接口。这个“其他程序”可以使用任何计算机语言来编写, 它通过CGI这个接口从HTTP服务器取得输入,然后把运行的结果又通过CGI这个接口交给HTTP服务器,而HTTP服务器把这个结果送给浏览器。

CGI 的出现让WEB从静态变为为动态,随着Web的越来越普及,很多的网站的都需要有动态的页面,以便与浏览者互交。CGI方式的缺点也越来越突出。因为 HTTP要生成一个动态页面,系统就必须启动一个新的进程以运行CGI程序,不断地fork是一项很消耗时间和资源的工作。这就出现了FastCGI。

FastCGI 像是一个常驻 (long-live) 型的 CGI,它可以一直执行着,只要激活后,不会每次都要花费时间去 fork 一次 (这是 CGI 最为人诟病的 fork-and-execute 模式)。

此时PHP环境基本已经配置成功

在WEB根目录(如我的D:/website)里建一个名为test.php的文件内容如下

重新启动apache服务

用浏览器打开 http://localhost/test.php 或  在LINUX系统中:/usr/local/php/bin/php -f test.php

如果可以看到php配置输出信息就OK了

注: 模块化安装 mod_php 就是把PHP做为APACHE一个内置模块。让apache http 服务器本身能够支持PHP语言,不需要每一个请求就启动PHP解释器来解释PHP

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
第五节 克隆 [5]
Oct 09 PHP
php多层数组与对象的转换实例代码
Aug 05 PHP
php创建sprite
Feb 11 PHP
PHP 读取和编写 XML
Nov 19 PHP
php天翼开放平台短信发送接口实现方法
Dec 22 PHP
PHP文件缓存类示例分享
Jan 30 PHP
php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
Jul 06 PHP
PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
Jan 09 PHP
Symfony2之session与cookie用法小结
Mar 18 PHP
php微信公众号开发之简答题
Oct 20 PHP
php-fpm重启导致的程序执行中断问题详解
Apr 29 PHP
Swoole源码中如何查询Websocket的连接问题详解
Aug 30 PHP
深入理解PHP之源码目录结构与功能说明
Jun 01 #PHP
基于PHP生成简单的验证码
Jun 01 #PHP
深入理解PHP原理之执行周期分析
Jun 01 #PHP
深入理解PHP之OpCode原理详解
Jun 01 #PHP
深入理解PHP中的count函数
May 31 #PHP
Ubuntu server 11.04安装memcache及php使用memcache来存储session的方法
May 31 #PHP
php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案
May 31 #PHP
You might like
THINKPHP+JS实现缩放图片式截图的实现
2010/03/07 PHP
smarty表格换行实例
2014/12/15 PHP
PHP输出一个等腰三角形的方法
2015/05/12 PHP
PHP输入流php://input实例讲解
2015/12/22 PHP
JQuery困惑—包装集 DOM节点
2009/10/16 Javascript
js单例模式详解实例
2013/11/21 Javascript
js与jquery获取父级元素,子级元素,兄弟元素的实现方法
2014/01/09 Javascript
js replace替换所有匹配的字符串
2014/02/13 Javascript
用jquery实现动画跳到顶部和底部(这个比较简单)
2014/09/01 Javascript
JavaScript制作简易的微信打飞机
2015/03/31 Javascript
如何使用jquery easyui创建标签组件
2015/11/18 Javascript
jquery模拟实现鼠标指针停止运动事件
2016/01/12 Javascript
JavaScript实现简洁的俄罗斯方块完整实例
2016/03/01 Javascript
批量下载对路网图片并生成html的实现方法
2016/06/07 Javascript
通过jquery实现页面的动画效果(实例代码)
2016/09/18 Javascript
xmlplus组件设计系列之文本框(TextBox)(3)
2017/05/03 Javascript
Vue中父组件向子组件通信的方法
2017/07/11 Javascript
Vue infinite update loop的问题解决
2019/04/23 Javascript
vue动态注册组件实例代码详解
2019/05/30 Javascript
Python 统计位数为偶数的数字代码详解
2020/03/15 Python
Python实现计算图像RGB均值方式
2020/06/04 Python
学会迭代器设计模式,帮你大幅提升python性能
2021/01/03 Python
Python入门基础之数字字符串与列表
2021/02/01 Python
巴西网上药房:onofre
2016/11/21 全球购物
德国低价购买灯具和家具网站:Style-home.de
2016/11/25 全球购物
读书心得体会
2013/12/28 职场文书
新学期校长寄语
2014/01/18 职场文书
金融管理专业毕业生求职信
2014/03/12 职场文书
人力资源管理专业应届生求职信
2014/04/24 职场文书
施工安全生产承诺书
2014/05/23 职场文书
商场圣诞节活动总结
2015/05/06 职场文书
公司文体活动总结
2015/05/07 职场文书
2016元旦文艺汇演主持词
2015/07/06 职场文书
2016春季运动会前导词
2015/11/25 职场文书
《狮子和鹿》教学反思
2016/02/16 职场文书
开发微信小程序之WXSS样式教程
2022/04/18 HTML / CSS