web应用之LAMP源码环境部署
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了web应用之LAMP源码环境部署相关的知识,希望对你有一定的参考价值。
web应用之LAMP源码环境搭建篇
目录
一、LAMP环境的介绍
1.LAMP环境的重要性
思索许久,最终还是决定写一篇详细的LAMP的源码编译安装的实验文档,一来是为了给自己一个交代,把技术进行系统的归纳,将技术以极致的形式呈现出来,做为一个做技术的应该有的态度要通过这篇文档展现,做为以后二来也是为了给那些一直在寻找详细文档来细致学习的人多一些思路,于是结合自己所学将零零散散知识进行了整合,尽量将最好的东西展现出来。安装过程中遇到的问题及解决方法我也会一一解答(专门用一篇博客来列出LAMP的问题和解决方法),三来后面都很多实验都需要用到LAMP的环境,比如搭建论坛,tomcat环境部署,搭建zabbix监控等等,所以LAMP环境绝不能草草搭建完事,如果LAMP出问题了,后面LAMP上部署的应用和各种服务可就遭殃了,所以认认真真,一丝不苟地把LAMP环境搭建好是非常有必要的
那么接下来就开始整个LAMP环境的搭建吧,这里我采用的是源码编译安装,虽然用yum安装会非常省事,但是由于yum安装的各种包版本可能比较老,在不同的系统上yum可能支持性不好,对后续的维护可能会有影响,所以综合考虑后,还是决定用源码编译来部署LAMP环境,如果为了图省事,以后就会有源源不断的麻烦事涌来,这样做得不偿失,做运维,在起初环境的设计和部署上一定要谨慎周全的考虑,把各方各面都要考虑周全,谨小慎微,容不得一点的纰漏,不然后期维护会非常的头疼,这一点是通用的,切记!!!这里我就用LAMP的环境搭建来做个事例吧,搭建过程中必须要做到条理清晰,思路严谨,任何的马虎都有可能为后期的维护带来巨大的隐患。
那么在搭建LAMP之前,首先简单地介绍一下LAMP的相关概念,以及整个LAMP源码编译的实验环境(由于条件限制,这里我用的是虚拟机来进行的实验,不过真实的生产环境操作一样),大体步骤(这个是整个实验的指导思路,脉络,后面的整个实验都是按照这个步骤有条不紊的进行,确保实验高质量的完成)
2.LAMP组件介绍
在安装LAMP之前,对LAMP进行了解是肯定的了, 首先就说说其含义
LAMP指的是linux,Apache,Mysql以及Php的简称,通过大量的生产环境的实践证明,在网络应用和开发环境方面,LAMP组合是非常棒的黄金搭档,它们的结合提供了非常强大功能。
linux作为底层的操作系统,提供灵活且可定制性的应用平台,为其他组件稳定高效的运行在其之上提供了保障
Apache作为Web服务器,提供了功能强大,稳定且支撑能力突出的web平台,为网站提供了强力支柱
Mysql也是一款非常优秀的数据库,从其产生的从多衍生数据库就可见证明其强大
Php是一种开发源代码的多用途脚本语言,可嵌入html中,适用于web开发,且其编写的数据可访问mysql数据库及linux提供的动态内容
二、Apache源码安装
1.下载Apache及相关依赖包
Apache2.4版本开始不自带apr库,所以需要下载相应的库文件(百度云盘:http::/pan.baidu.com/s/1bnL31c7)
1.apr(Apache依赖包) http://irrors.hust.edu.cn/apache/apr
2.apr-util (Apache依赖包) http://irrors.hust.edu.cn/apache/apr
3.pcre (Apache依赖包) http://sourceforge.net/projects/pcre/files/pcre/
4.Apache http://archive.apache.org/dist/httpd/
2.安装Apache及其相关依赖包
2-1.解压Apache及相关依赖包(开始安装依赖包,注意,需要将解压包放到apache软件解压后的srclib目录下面也就是这里的/soft/httpd-2.4.16/srclib/)
[[email protected] soft]#tar -zxvf
[[email protected] soft]#tar -zxvf apr-1.5.2.tar.gz
[[email protected] soft]#tar -zxvf apr-util-1.5.4.tar.g
[[email protected] soft]#tar -zxvf pcre-8.37.tar.g
将相关依赖包放入/soft/httpd-2.4.16/srclib/中
[[email protected] soft]#mv apr-1.5.2 /httpd-2.4.16/srclib/apr
[[email protected] soft]#mv apr-util /httpd-2.4.16/srclib/apr-util
[[email protected] soft]# cd /soft/httpd-2.4.16/srclib/
[[email protected] srclib]# cd apr 在目录apr下进入configure配置文件将$RM "cfgfile"这一行用#注销
[[email protected] apr]# ./configure --prefix=/usr/local/apr
[[email protected] apr]# make && make install
安装apr-util
[[email protected] srclib]# cd apr-util
[[email protected] apr-util]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
[[email protected] apr-util]# make && make install
[[email protected] srclib]# tar -zxvf pcre-8.37.tar.gz
[[email protected] srclib]# mv pcre-8.37 pcre
[[email protected] pcre-8.37]# ./configure --prefix=/usr/local/pcre
[[email protected] pcre-8.37]# make && make install
[[email protected] soft]# cd httpd-2.4.16
[[email protected] soft]# ./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd --with-z=/usr/local/zlib/ --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-static-support --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
[[email protected] soft]# make && make install
安装详解
#./configure \ #执行当前目录下软件自带的配置命令
#--prefix=/usr/local/apache2 \ #指定Apache软件安装的位置
#--sysconfdir=/etc/httpd \ #指定Apache服务器配置文件存放位置
# --with-z=/usr/local/zlib/ \ #指定zlib库文件的位置
# --enable-so \ #以动态共享对象(DSO)编译
# --enable-deflate=shared \ #缩小传输编码的支持
# --enable-expires=shared \ #期满头控制
# --enable-rewrite=shared \ #基于规则的URL操控
# --enable-static-support \ #建立一个静态链接版本的支持
#--with-apr=/usr/local/apr \ #加入apr依赖包安装路径
#--with-apr-util=/usr/local/apr-util \ #加入apr-util依赖包安装路径
#--with-pcre=/usr/local/pcre \ #加入pcre依赖包安装路径
进入/etc/httpd/httpd.conf配置文件,任意位置插入一行ServerName localhost:80
[[email protected] httpd]# /usr/local/apache2/bin/apachectl start
httpd (pid 55493) already running
[[email protected] ~]# cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd
[[email protected] ~]# service httpd start
httpd (pid 45005) already running
[[email protected] httpd]# netstat -na |grep 80
tcp 0 0 :::80 :::* LISTEN
进入/etc/init.d/httpd,加入
# chkconfig: 345 61 61
# description:Apache httpd
[[email protected] ~]# chkconfig --add httpd
[[email protected] ~]# chkconfig httpd on
关闭iptables
[[email protected] httpd]# iptables -F 清空iptables防火墙策略
[[email protected] httpd]# service iptables stop 关闭防火墙
iptables: Setting chains to policy ACCEPT: filter [ OK ]
iptables: Flushing firewall rules: [ OK ]
iptables: Unloading modules: [ OK ]
[[email protected] httpd]# chkconfig iptables off 重启后防火墙依旧处于关闭状态
关闭selinux
以上是关于web应用之LAMP源码环境部署的主要内容,如果未能解决你的问题,请参考以下文章