Linux编译安装Apache+PHP

来自:自学it网,http://www.zixue.it/


1】编译安装Apache+PHP

1.安装程序依赖库和开发环境

 

为了省事把所需要的库文件全都安装上,可以使用rpm包安装,也可以用yum命令安装,

yum -y install gcc gcc-c++ autoconf automake make libjpeg libjpeg-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers libtool* mysql-devel

ln -s /usr/lib64/mysql/libmysqlclient.so.16.0.0 /usr/lib/libmysqlclient_r.so

 

2.部署apache

(1) 解包 tar zxvf httpd-2.2.22.tar.gz

(2) 切换目录 cd httpd-2.2.22

(3) 配置 ./configure  --prefix=/usr/local/apache --enable-so --enable-proxy --enable-rewrite --with-mpm=worker

(4) 编译安装:make&&make install

检查模块是否安装上

3.Apache整合PHP

(1) 安装freetype

tar jxvf freetype-2.3.10.tar.bz2

cd freetype-2.3.10

./configure --prefix=/usr/local/freetype

make

make install

cd ..

(2) 安装jpeg

tar zxvf jpegsrc.v7.tar.gz

cd jpeg-7

./configure –prefix=/usr/local/jpeg

make

make install

cd ..

(3) 安装libpng

tar jxvf libpng-1.2.41.tar.bz2

cd libpng-1.2.41

./configure –prefix=/usr/local/libpng

make

make install

(4) 安装GD

①   链接头文件

ln -s /usr/local/libpng/include/pngconf.h /usr/include

ln –s /usr/local/libpng/include/png.h /usr/include

②   安装GD

tar zxvf gd-2.0.35.tar.gz

cd gd-2.0.35

./configure –prefix=/usr/local/gd2 \

--with-freetype=/usr/local/freetype –with-png=/usr/local/libpng \

--with-jpeg=/usr/local/jpeg

make

make install

cd ..

(5) 安装PHP

tar jxvf php-5.2.17.tar.bz2

cd php-5.2.17

./configure --prefix=/usr/local/php \

--with-gd=/usr/local/gd2 --with-apxs2=/usr/local/apache/bin/apxs \

--enable-mbregex --enable-bcmath \

--with-mysql --with-zlib-dir --enable-mbstring=all \

--with-pdo-mysql --with-freetype-dir=/usr/local/freetype --with-jpeg-dir=/usr/local/jpeg \

--with-openssl \

--with-curl

make

make install

cp php.ini-dist /usr/local/php/lib/php.ini

cd ..

(6) 修改apache配置文件

cd /usr/local/apache/

mkdir conf/

vim httpd.conf

在主配置文件<IfModule mime_module><\IfModule>之间插入行:

AddType application/x-httpd-php .php

添加apache用户,修改User和Group为:

User apache

Group apache

ServerName localhost:80

Include conf.d/*.conf

(7) 检查

在默认的Apache根文档目录创建文件/usr/local/apache/htdocs/test.php,其内容为:

<?

PHPinfo();

?>

检查是否有语法错误:/usr/local/apache/bin/apachectl –t

编写启动脚本httpd放在/etc/init.d下

启动apache:service httpd start

输入:http://apache-ip/test.php 查看php所支持的模块加载情况。

4虚拟目录:

vim /usr/local/apache/conf.d/vhost.conf

NameVirtualHost *:80

<VirtualHost *:80>

DocumentRoot /home/linuxops/www/

ServerName linuxops.com

</VirtualHost>


Linux编译安装Apache+PHP的更多相关文章

  1. linux编译安装Apache

    1 前言 编译安装Apache HTTP Server,目前最新的版本为2.4.41,做好apr,apr-util,pcre的安装后编译安装即可. 2 准备工作 三个:apr,apr-util,pcr ...

  2. suse linux 编译安装Apache时报“APR NOT FOUND”的解决方法

    今日编译apache时出错: #./configure --prefix……检查编辑环境时出现: checking for APR... noconfigure: error: APR not fou ...

  3. Linux 编译安装 apache 2.4

    在安装apache之前需要准备一些必要的依赖包 gcc安装: #yum install -y gcc gcc-c++安装: #yum install gcc-c++  apr安装: 下载包:apr-1 ...

  4. linux 编译安装apache

    1.下载apache.安装apache #wget http://apache.etoak.com//httpd/httpd-2.4.4.tar.gz #tar zxvf httpd-2.4..4.t ...

  5. Linux 通过编译安装apache服务以及配置

    Linux 编译安装apache服务 一.安装 1.通过编译安装,首先需要下载源代码安装包 apache下载链接:http://httpd.apache.org/download.cgi 2.解开源代 ...

  6. Linux下编译安装Apache Http Server

    Linux下编译安装Apache Http Server [TOC] 1.下载httpd-2.4.12.tar.bz2 wget http://mirror.bit.edu.cn/apache/htt ...

  7. linux中编译安装Apache、PHP、MySQL(上)

    1.简介 在阿里云买了个云服务器,一直没时间折腾.过了近十天了吧,才有时间好好玩玩这个云服务器.自己是做Web开发的,所以我需要的开发环境是LAMP.之前打算是采用yum安装,不过yum安装apach ...

  8. linux编译安装php apache mysql (已试过)

    阅读目录 (全部使用源码安装方式,先安装mysql,然后是apache,再是php,这样好像能防止挺多问题的,期间出现问题基本是依赖没有或者版本不对) 1.简介 2.安装apache 2.1.yum方 ...

  9. Linux学习之编译安装apache

    疯狂吐槽腾某云..编译安装apache折腾了一下午..还是我不太熟练. 首先要先准备好安装apache的三个依赖包以及apache包.(一定要准备好!!折腾了一下午的小白握拳!!) -rw-r--r- ...

随机推荐

  1. CPP-基础:windows api 多线程---互斥量、信号量、临界值、事件区别

    http://blog.csdn.net/wangsifu2009/article/details/6728155 四种进程或线程同步互斥的控制方法:1.临界区:通过对多线程的串行化来访问公共资源或一 ...

  2. Repbase library|divergence rate|self-sequence alignment|genomic rearrangement|cutoffs|breakpoint

    (Panda, dog and human repeat comparison):与其他动物比较重复序列 我们使用Repbase 库(重复序列库)+已知的转录原件序列+识别软件,评估出转录原件占比,并 ...

  3. ios之自定义UINavigationBar

    ios5 自定义导航条问题 在ios5之前的系统中,可以通过定义导航条类别的方式自定义导航条: @implementation UINavigationBar (CustomImage)- (void ...

  4. nginx 部署ssl证书之后访问用火狐出现SSL_ERROR_RX_RECORD_TOO_LONG此错误,用Google出现ERR_SSL_PROTOCOL_ERROR错误

    server { listen ; server_name xxx.com; ssl_certificate ssl/xxx.pem; ssl_certificate_key ssl/xxx.key; ...

  5. Android Studio问题记录

    1>Android Studio中module是什么,? 答:Android Studio是基于intellij,跟eclipse不太一样.对应关系如下: intellij的project -- ...

  6. GIMP图像窗口的自定义

    具体功能包含:初始缩放比例.空格键按下时触发动作

  7. node.js中常用的fs文件系统

    fs文件系统模块对于系统文件及目录进行一些读写操作. 模块中的方法均有异步和同步版本,例如读取文件内容的函数有异步的 fs.readFile() 和同步的 fs.readFileSync(). 异步的 ...

  8. mbist summary

    1. 关于mbist,网上也有介绍,觉得不错: 推荐的mbistt的博客:奋斗的猪 2.使用的工具是mbistarchitect,不是tessent. 3.工具使用的相关文档:从EETOP和工具自带的 ...

  9. sed快速学习

  10. laravel中的scope作用域

    laravel中在模板中处理(属于不属于)的数据(增删改查),引入了scope来处理 也就是在模板定义方法中,加上前缀scope laravel中要求在定义的方法scope后面跟的字母要大写 后面那我 ...