首页 > 技术文章 > Lamp 编译安装 (未完待续)

richardcastle 2018-01-16 16:32 原文

顺序安装:linux apache mysql php

Linux 这个就不多说明了...

CentOS 6.5 镜像
虚拟机安装

一次性安装开发工具:

# yum groupinstall "Development tools"
or:
# yum -y groupinstall "Development tools"

查看已安装的:

# yum grouplist | more 
# yum grouplist | grep Develpment 
# yum groupinfo Develpment tools 

Apache

步骤:

1、 安装编译环境
# yum -y install gcc gcc++ zlib zlib-devel

2、 卸载原有apache
# rpm -qa |grep httpd

# rpm -e --nodeps httpd-2.2.15-29.el6.centos.x86_64

# rpm -e --nodeps httpd-tools-2.2.15-29.el6.centos.x86_64

注意:卸载的时候如果卸载不掉,系统一般会提示包的依赖关系,并且列出依赖的包的名称,先卸载提示依赖的包就可以了。 
说明:rpm –e 是卸载rpm包的命令,后面是包名称,**最后的版本号是不用打的**. 
带版本号的时候,有可能提示没有此包的错误。所以用下面的命令即可:
# rpm -e --nodeps httpd

# rpm -e --nodeps httpd-tools

3、 下载解压源码包
去apache 官网找到包地址:http://apache.fayea.com/httpd/httpd-2.4.25.tar.gz ,用wget命令下载:
# wget http://apache.fayea.com/httpd/httpd-2.4.25.tar.gz

解压下载的源码包,因为下载的是tar.gz的源码包,所以我们有两种解压方法:
方法一、利用gunzip进行解压,如下:
# gunzip -c httpd-2.2.27.tar.gz>httpd-2.2.27.tar
-c参数可以不删除源文件
# tar -xf httpd-2.2.27.tar

图片标题

方法二、直接使用tar解压,如下:

# tar -zxf httpd-2.2.27.tar.gz
或者
# tar -xf httpd-2.2.27.tar.gz

图片标题

4、 安装apache
进入httpd-2.2.27目录,查看configure命令帮助
# ./configure --help 

title

具体编译如下:

# ./configure --prefix=/usr/local/apache2 --enable-rewrite --enable-so --enable-headers --enable-expires --with-mpm=worker --enable-modules=most --enable-deflate

--prefix=/usr/local/apache2表示指定apache的安装路径,默认安装路径为/usr/local/apache2

--enable-rewrite提供URL规则的重写更嫩那个,即根据已知的URL地址,转换为其它想要的URL地址

--enable-so激活apache服务的DSO(Dynamic Shared Objects动态共享目标),即在以后可以以DSO的方式编译安装共享模块,这个模块本身不能以DSO方式编译。

--enable-headers提供允许对HTTP请求头的控制。

--enable-expires激活荀彧通过配置文件控制HTTP的“Expires:”和“Cache-Control:”头内容,即对网站图片、js、css等内容,提供客户端浏览器缓存的设置。这个是apache调优的一个重要选项之一。

--with-mpm=worker选择apache mpm的模式为worker模式。为worker模式原理是更多的使用线程来处理请求,所以可以处理更多的并发请求。而系统 资源的开销小玉基于进程的MPM prefork。如果不指定此参数,默认的模式是prefork进程模式。这个是apache调优的一个重要选项之一。

--enable-deflate提供对内容的压缩传输编码支持,一般是html、js、css等内容的站点。使用此参数会打打提高传输速度,提升访问者访问的体验。在生产环境中,这是apache调优的一个重要选项之一。

###编译configure 的时候,报错了:
checking for APR... no 
configure: error: APR not found.  Please read the documentation.

title

解决方法:
Apache在安装时需要一些准备环境,这里需要安装另外一个东西 APR(Apache Portable Runtime)。
下载地址: http://archive.apache.org/dist/apr/ 找最新版本
# wget http://archive.apache.org/dist/apr/apr-1.5.2.tar.gz
得到文件:apr-1.5.2.tar.gz
解压:tar -zxvf apr-1.5.2.tar.gz
编译安装:(进入解压包文件夹apr-1.5.2)
# ./configure --prefix /home/software_dir/apr
执行ing ..................
没有问题的话,
# make 
执行ing ..................
没有问题的话,
# make install
安装成功的话,在指定的目录software_dir/apr下会生成apr文件;

接着装apache,切换到源代码目录设置编译参数: 
# ./configure --prefix=/usr/local/apache2 --enable-rewrite --enable-so --enable-headers --enable-expires --with-mpm=worker --enable-modules=most --enable-deflate
还是报上面的错,这是因为上面自定义了apr的安装目录,所以得把这个信息告诉apache
# ./configure --prefix=/usr/local/apache2  --with-apr=/home/software_dir/apr --enable-rewrite --enable-so --enable-headers --enable-expires --with-mpm=worker --enable-modules=most --enable-deflate  

依然有可能报错:configure: error: APR-util not found
同上面的APR not found
下载APR-until 并安装
# wget http://archive.apache.org/dist/apr/apr-util-1.5.4.tar.gz
解压编译安装。
这里会出现个同样的问题:指定安装目录问题,不过这次是指定的APR,解决如下:
# ./configure --prefix=/home/software_dir/apr-util/ --with-apr=/home/software_dir/apr/
# make 
# make install

回到apache安装包目录,继续安装apache(配置加入:--with-apr-util=/home/software_dir/apr-util ):
# ./configure --prefix=/usr/local/apache2  --with-apr=/home/software_dir/apr --with-apr-util=/home/software_dir/apr-util  --enable-rewrite --enable-so --enable-headers --enable-expires --with-mpm=worker --enable-modules=most --enable-deflate
然而,你会发现,它依然再继续报错,其他的错误checking for pcre-config... false,如图:

title

同理,下载pcre
wget https://sourceforge.net/projects/pcre/files/pcre/8.40/pcre-8.40.tar.gz
解压编译安装。
这里可能报错:
错误:make[1]: Leaving directory `/pcre-8.40'
原因大概是因为缺少库:gcc-c++,libtool,yum 安装即可。
或者
错误:checking for pcre-config... false
# yum -y install pcre-devel
--------------另一个情况-----------------
yum -e --nodeps pcre 删除自带的pcre 
yum install pcre  用yum安装新的pcre
如不用yum安装新的,用源码,可能会报gcc错误,解决方法
wget http://mirror.centos.org/centos/6/os/x86_64/Packages/pcre-7.8-7.el6.x86_64.rpm
安装一个这个,rpm -ivh pcre-7.8-7.el6.x86_64.rpm
-----------------------------------------
解决pcre 的问题比较多,未知比较多。看个人情况




终于,我这里不报错了...

title

开心。
那么,就继续安装apache 吧。
# make
# make install

5、 测试apache

6、 查看apache安装生成的目录

7、 查看apache的配置文件

8、 apache加入系统服务

MySQL

PHP

推荐阅读