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 相关文章推荐
Php Cookie的一个使用注意点
Nov 08 PHP
163的邮件用phpmailer发送(实例详解)
Jun 24 PHP
Yii框架中 find findAll 查找出制定的字段的方法对比
Sep 10 PHP
ThinkPHP水印功能实现修复PNG透明水印并增加JPEG图片质量可调整
Nov 05 PHP
php针对cookie操作的队列操作类实例
Dec 10 PHP
php自定义函数实现二维数组按指定key排序的方法
Sep 29 PHP
PHP 实现字符串翻转(包含中文汉字)的实现代码
Apr 01 PHP
ajax+php实现无刷新验证手机号的实例
Dec 22 PHP
php封装db类连接sqlite3数据库的方法实例
Dec 19 PHP
PHP实现的简单路由和类自动加载功能
Mar 13 PHP
PHP实现关键字搜索后描红功能示例
Jul 03 PHP
Thinkphp5.0 框架Model模型简单用法分析
Oct 11 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实现密保卡功能实现代码&amp;lt;打包下载直接运行&amp;gt;
2011/10/09 PHP
深入PHP变量存储的详解
2013/06/13 PHP
php中session使用示例
2014/03/29 PHP
为百度UE编辑器上传图片添加水印功能
2015/04/16 PHP
Apply an AutoFormat to an Excel Spreadsheet
2007/06/12 Javascript
支持ie与FireFox的剪切板操作代码
2009/09/28 Javascript
php读取sqlite数据库入门实例代码
2014/06/25 Javascript
js匿名函数的调用示例(形式多种多样)
2014/08/20 Javascript
sails框架的学习指南
2014/12/22 Javascript
Javascript基础教程之if条件语句
2015/01/18 Javascript
Javascript 链式作用域详细介绍
2017/02/23 Javascript
angularjs点击图片放大实现上传图片预览
2017/02/24 Javascript
JS+html5制作简单音乐播放器
2020/09/13 Javascript
Bootstrap进度条与AJAX后端数据传递结合使用实例详解
2017/04/23 Javascript
Angularjs 事件指令详细整理
2017/07/27 Javascript
Angular.js通过自定义指令directive实现滑块滑动效果
2017/10/13 Javascript
vue添加class样式实例讲解
2019/02/12 Javascript
Vue开发之封装分页组件与使用示例
2019/04/25 Javascript
详解基于 Node.js 的轻量级云函数功能实现
2019/07/08 Javascript
element-ui 中使用upload多文件上传只请求一次接口
2019/07/19 Javascript
Vue组件模板的几种书写形式(3种)
2020/02/19 Javascript
使用Python装饰器在Django框架下去除冗余代码的教程
2015/04/16 Python
Django中几种重定向方法
2015/04/28 Python
使用SAE部署Python运行环境的教程
2015/05/05 Python
python写日志封装类实例
2015/06/28 Python
Python实现简单的文件传输与MySQL备份的脚本分享
2016/01/03 Python
对PyQt5中树结构的实现方法详解
2019/06/17 Python
tensorflow安装成功import tensorflow 出现问题
2020/04/16 Python
PyQT5 实现快捷键复制表格数据的方法示例
2020/06/19 Python
python爬虫利器之requests库的用法(超全面的爬取网页案例)
2020/12/17 Python
纯CSS打造(无图像无js)的非常流行的讲话(语音)气泡效果
2012/12/28 HTML / CSS
美国知名的在线旅游服务网站:Priceline
2016/07/23 全球购物
建筑系毕业生自我鉴定
2014/01/24 职场文书
2015年六一儿童节演讲稿
2015/03/19 职场文书
教师节校长致辞
2015/07/31 职场文书
golang goroutine顺序输出方式
2021/04/29 Golang