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 相关文章推荐
Oracle Faq(Oracle的版本)
Oct 09 PHP
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装最快的解决办法
Aug 01 PHP
选择PHP作为网站开发语言的原因分享
Jan 03 PHP
CURL状态码列表(详细)
Jun 27 PHP
php中的Base62类(适用于数值转字符串)
Aug 12 PHP
PHP+MySQL删除操作实例
Jan 21 PHP
php实现word转html的方法
Jan 22 PHP
php for 循环使用的简单实例
Jun 02 PHP
php利用gd库为图片添加水印
Nov 09 PHP
PHP连接MYSQL数据库的3种常用方法
Feb 27 PHP
php-app开发接口加密详解
Apr 18 PHP
PHP中abstract(抽象)、final(最终)和static(静态)原理与用法详解
Jun 05 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
PHP 长文章分页函数 带使用方法,不会分割段落,翻页在底部
2009/10/22 PHP
php 搜索框提示(自动完成)实例代码
2012/02/05 PHP
javascript的函数
2007/01/31 Javascript
体验js中splice()的强大(插入、删除或替换数组的元素)
2013/01/16 Javascript
JS将表单导出成EXCEL的实例代码
2013/11/11 Javascript
JavaScript实现生成GUID(全局统一标识符)
2014/09/05 Javascript
用简洁的jQuery方法toggleClass实现隔行换色
2014/10/22 Javascript
JavaScript和CSS交互的方法汇总
2014/12/02 Javascript
node.js中的fs.lchmodSync方法使用说明
2014/12/16 Javascript
jQuery后代选择器用法实例
2014/12/23 Javascript
jQuery超赞的评分插件(8款)
2015/08/20 Javascript
简单分析javascript中的函数
2016/09/10 Javascript
详解js中Json的语法与格式
2016/11/22 Javascript
layer插件select选中默认值的方法
2018/08/14 Javascript
vue-cli 默认路由再子路由选中下的选中状态问题及解决代码
2018/09/06 Javascript
js计算两个日期间的天数月的实例代码
2018/09/20 Javascript
Vue项目自动转换 px 为 rem的实现方法
2018/10/29 Javascript
微信公众平台 客服接口发消息的实现代码(Java接口开发)
2019/04/17 Javascript
详解js根据百度地图提供经纬度计算两点距离
2019/05/13 Javascript
jquery.pager.js实现分页效果
2019/07/29 jQuery
[40:55]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#4Newbee VS Fnatic
2016/03/03 DOTA
python自然语言编码转换模块codecs介绍
2015/04/08 Python
python 接收处理外带的参数方法
2018/12/03 Python
如何使用pycharm连接Databricks的步骤详解
2020/09/23 Python
Python 找出英文单词列表(list)中最长单词链
2020/12/14 Python
Python自动化测试基础必备知识点总结
2021/02/07 Python
美国护肤咨询及美容产品电商:Askderm
2017/02/24 全球购物
台湾7-ELEVEN线上购物中心:7-11
2021/01/21 全球购物
size?荷兰官方网站:英国高级运动鞋精品店
2020/07/24 全球购物
德语专业求职信
2014/03/12 职场文书
2014年征兵标语
2014/06/20 职场文书
庆七一宣传标语
2014/10/08 职场文书
中学生旷课检讨书2篇
2014/10/09 职场文书
2015毕业寄语大全
2015/02/26 职场文书
幼儿园大班教师随笔
2015/08/14 职场文书
分享几种python 变量合并方法
2022/03/20 Python