Linux环境下搭建php开发环境的操作步骤


Posted in PHP onJune 17, 2013

本文主要记载了通过编译方式进行软件/开发环境的安装过程,其他安装方式忽略!
文章背景:
因为php和Apache等采用编译安装方式进行安装,然而编译安装方式,需要c,c++编译环境,
通过apt方式安装build-essential
$ sudo apt-get install build-essential
编译安装的步骤一般分为:
编译配置
$ ./configure --XXX(参数s)
编译配置的问题:
a、在没有安装之前,对软件无法全面了解
b、如果不全全面了解,又不知道该怎么安装(附带哪些参数)
c、可以先选择一个最简单的安装方式,随着使用,多次安装来解决这个问题
该过程比较复杂,需要很复杂的具体参数配置,具体参数通过 configure --help 查看
编译
$ make
安装
$ sudo make install
**************************************
Apache 安装
1、下载 httpd-2.2.11.tar.gz
2、解压
tar zxvf httpd-2.2.11.tar.gz
在执行tar指令的路径下,会产生一个httpd-2.2.11目录
3、查看一下编译的配置信息
     切换到解压之后的httpd-2.2.11目录
   ./configure --help
     通过本步骤可以了解有那些可以安装的模块,以及安装配置信息需要设置
     进一步查看手册,也可以了解相关信息 

4、进行编译配置
$ ./configure --prefix=/usr/local/apache2 \  指定安装目录
--enable-so \                                允许使用外部so模块
--with-mpm=prefork                           url请求跳转策略
5、编译:
$ make
6、安装:(使用sudo是因为要安装的路径/usr/local/apache2不属于个人路径)
$ sudo make install
《安装完毕》
7、测试
修改httpd.conf。
将  #ServerName www.example.com:80 修改为 ServerName 127.0.0.1:80(localhost:80)
启动 sudo ./apachectl -k start
停止 sudo ./apachectl -k stop
重新起动 sudo ./apachectl -k restart (该命令有时无效,用stop+start代替)

****************************************
PHP安装

1、下载php-5.2.8.tar.gz
2、解压tar zxvf php-5.2.8.tar.gz
3、查看一下编译的配置信息
     切换到解压之后的httpd-2.2.11目录
   ./configure --help
     通过本步骤可以了解有那些可以安装的模块,以及安装配置信息需要设置
     进一步查看手册,也可以了解相关信息
4、编译配置
./configure --prefix=/home/guandl/webenv/php528 \
--enable-mbstring \
--with-apxs2=/usr/local/apache2/bin/apxs 
5 编译
make
6、安装
sudo make install
《安装完毕》
7、复制php.ini
因为一般安装后的php目录$php/lib下没有php的配置文件,需要把解压目录下的php.ini-recommended复制到php的lib目录
sudo cp php.ini-recommended /home/guandl/webenv/php528/lib/php.ini
8、修改apache 的配置文件 httpd.conf
增加一下内容
LoadModule php5_module        modules/libphp5.so 安装php时候已经自动生成
AddType application/x-httpd-php .php
9、测试
编写一个php文件,如any.php
<?php
phpinfo();
?>
放到apache的htdocs目录下
重新启动apache
http://127.0.0.1/any.php

PHP 相关文章推荐
在Windows中安装Apache2和PHP4的权威指南
Oct 09 PHP
在PHP中执行系统外部命令
Oct 09 PHP
smarty实例教程
Nov 19 PHP
php中将时间差转换为字符串提示的实现代码
Aug 08 PHP
PHP Parse Error: syntax error, unexpected $end 错误的解决办法
Jun 05 PHP
PHP register_shutdown_function函数的深入解析
Jun 03 PHP
php防注入,表单提交值转义的实现详解
Jun 10 PHP
PHP中的闭包(匿名函数)浅析
Feb 07 PHP
PHP设置进度条的方法
Jul 08 PHP
[原创]php使用curl判断网页404(不存在)的方法
Jun 23 PHP
PHP从二维数组得到N层分类树的实现代码
Oct 11 PHP
php  PATH_SEPARATOR判断当前服务器系统类型实例
Oct 28 PHP
PHP之短标签开启设置
Jun 17 #PHP
深入掌握include_once与require_once的区别
Jun 17 #PHP
php抓取页面的几种方法详解
Jun 17 #PHP
深入PHP magic quotes的详解
Jun 17 #PHP
php错误级别的设置方法
Jun 17 #PHP
PHP大小写问题:函数名和类名不区分,变量名区分
Jun 17 #PHP
修改php.ini以达到屏蔽错误信息并记录日志
Jun 16 #PHP
You might like
PHP的变量总结 新手推荐
2011/04/18 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
Mootools 1.2教程 Fx.Morph、Fx选项和Fx事件
2009/09/15 Javascript
让ie运行js时提示允许阻止内容运行的解决方法
2010/10/24 Javascript
jQuery代码优化之基本事件
2011/11/01 Javascript
返回页面顶部top按钮通过锚点实现(自写)
2013/08/30 Javascript
jquery动态添加删除一行数据示例
2014/06/12 Javascript
详解JavaScript编程中正则表达式的使用
2015/10/25 Javascript
JS+JSP通过img标签调用实现静态页面访问次数统计的方法
2015/12/14 Javascript
基于jQuery实现Accordion手风琴自定义插件
2020/10/13 Javascript
Angular.JS判断复选框checkbox是否选中并实时显示
2016/11/30 Javascript
Node做中转服务器转发接口
2017/10/18 Javascript
原生javascript实现类似vue的数据绑定功能示例【观察者模式】
2020/02/24 Javascript
解决vue与node模版引擎的渲染标记{{}}(双花括号)冲突问题
2020/09/11 Javascript
原生JS实现pc端轮播图效果
2020/12/21 Javascript
vue keep-alive的简单总结
2021/01/25 Vue.js
vue-router懒加载的3种方式汇总
2021/02/28 Vue.js
Python中针对函数处理的特殊方法
2014/03/06 Python
Python中下划线的使用方法
2015/03/27 Python
python集合用法实例分析
2015/05/30 Python
python3使用urllib模块制作网络爬虫
2016/04/08 Python
利用pyinstaller将py文件打包为exe的方法
2018/05/14 Python
Python进阶之@property动态属性的实现
2019/04/01 Python
numpy中的ndarray方法和属性详解
2019/05/27 Python
Python生成指定数量的优惠码实操内容
2019/06/18 Python
pandas中read_csv的缺失值处理方式
2019/12/19 Python
Python RabbitMQ实现简单的进程间通信示例
2020/07/02 Python
Python 发送邮件方法总结
2020/08/10 Python
无惧面试,带你搞懂python 装饰器
2020/08/17 Python
python -v 报错问题的解决方法
2020/09/15 Python
美国在线咖啡、茶和餐厅供应商:LollicupStore
2018/05/04 全球购物
粗加工管理制度
2014/02/04 职场文书
会计求职自荐信
2014/06/20 职场文书
民族精神月活动总结
2014/08/28 职场文书
在项目中使用redis做缓存的一些思路
2021/09/14 Redis
JDK8中String的intern()方法实例详细解读
2022/09/23 Java/Android