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

yipeiwu_com7年前PHP代码库

本文主要记载了通过编译方式进行软件/开发环境的安装过程,其他安装方式忽略!
文章背景:
因为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 session有效期session.gc_maxlifetime

一个已知管用的方法是,使用session_set_save_handler,接管所有的session管理工作,一般是把session信息存储到数据库,这样可以通过SQL语句来删除所有过期...

浅析PHP程序设计中的MVC编程思想

PHP的MVC编程思想目前已经被广泛使用于各种大型项目的开发,很多成熟的MVC框架也逐渐被大家所熟知并被广泛应用于各类项目中,比较常见的如ThinkPHP、codeigniter、Sym...

php获得网站访问统计信息类Compete API用法实例

本文实例讲述了php获得网站访问统计信息类Compete API用法。分享给大家供大家参考。具体如下: 这里使用php获得网站访问统计信息类Compete API,Compete是一个专...

解析php函数method_exists()与is_callable()的区别

php函数method_exists() 与is_callable()的区别在哪?在php面相对象设计过程中,往往我们需要在调用某一个方法是否属于某一个类的时候做出判断,常用的方法有 m...

php抓取https的内容的代码

直接用file_get_contents,会报错; 复制代码 代码如下: $url = (https://xxx.com"); file_get_contents($url); 错误:...