什么是LAMP
LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写:
- Linux,操作系统
- Apache,网页服务器
- MariaDB或MySQL,数据库管理系统(或者数据库服务器)
- PHP、Perl或Python,脚本语言
LAMP框架我们需要的源码包如下:
Apache=http://httpd.apache.org/ httpd主程序包
MySQL=http://dev.mysql.com/downloads/mysql/ mysql主程序包
PHP=http://php.net/downloads.php php主程序包
apr=http://apr.apache.org/ apr是httpd的依赖包
apr-util=http://apr.apache.org/ apr-util是httpd的第二个依赖包
apr和apr-util这个两个软件是对后端服务软件进行优化的,
apr-util只是在apr的基础上提供了更多的数据结构和操作系统封装接口而已。
pcre 是httpd的第三个依赖包 http://pcre.org/
编译安装LAMP所需要及其所使用的源码版本:
httpd version:httpd-2.4.16
apr version:apr-1.5.2
pcre version:pcre-8.37
apr-util version:apr-util-1.5.4
mysql version:mysql-5.6.26
php version:php-5.6.13
建议在编译之前,把开发包组安装:
"Development Tools"和 "Development Libraries"
yum groupinstall "Development Tools" "Development Libraries" -y
yum install gcc gcc-c++ openssl-devel -y
apr和apr-util独立编译
./configure --prefix=/usr/local/apr && make -j 2 && make install
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr && make -j 2 && make install
./configure --prefix=/usr/local/pcre && make -j 2 && make install && cd
Apache源码编译
依赖环境安装完成,开始编译安装apache
tar xvf httpd-2.4.16.tar.bz2 -C /usr/local/src/ && cd /usr/local/src/httpd-2.4.16
./configure --prefix=/usr/local/apache2.4 --enable-so --enable-rewrite --enable-ssl --with-pcre=/usr/local/pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mpms-shared=all --with-mpm=event && make -j 2 && make install &&
--prefix=/usr/local/apache2.4 #安装路径
--enable-so #支持动态加载模块
--enable-rewrite #支持网站地址重写
--enable-ssl #支持SSL加密
--with-pcre=/usr/local/pcre #pcre路径
--with-apr=/usr/local/apr #apr路径
--with-apr-util=/usr/local/apr-util #apr-util路径
遇到如下错误:
1、checking for OpenSSL… checking for user-provided OpenSSL base directory… none
checking for OpenSSL version >= 0.9.8a… FAILED
configure: WARNING: OpenSSL version is too old
no
checking whether to enable mod_ssl… configure: error: mod_ssl has been requested but can
not be built due to prerequisite failures
应该是ssl版本太老了,解决方法:
yum install openssl-devel
yum update openssl
配置Apache的启动脚本
cp
/usr/local/apache2.4/bin/apachectl /etc/init.d/apache2.4
/etc/init.d/httpd stop
chkconfig httpd off
编辑启动脚本文件
vim
/etc/init.d/apache2.4
#!/bin/sh
# chkconfig: 2345 64
36
#这个是启动级别的服务,2345是指那些级别启动,64是开启顺序,应该在network服务的后面,36是关闭顺序,应该在network的前面,这里并不是注释
#默认network的是:2345 10 90
# description: Apache2.4.16 start
script #描述字段,有了这两个字段,就可以用chkconfig命令控制
service apache2.4 start
chkconfig apache2.4 on #设置开机自启动
Apache安装完成需要注意的地方
ps -aux | grep
apache //源码编译apache,运行用户为deamon
Warning: bad syntax, perhaps a bogus ‘-‘? See /usr/share/doc/procps-3.2.8/FAQ
root 43191 0.0 0.0 70632 2184? Ss 16:54 0:00/usr/local/apache2.4/bin/httpd -k start
daemon 43192 0.0 0.1663500 4820? Sl 16:54 0:00/usr/local/apache2.4/bin/httpd -k start
daemon 43193 0.0 0.1414892 4184? Sl 16:54 0:00/usr/local/apache2.4/bin/httpd -k start
daemon 43194 0.0 0.1414892 4188? Sl 16:54 0:00/usr/local/apache2.4/bin/httpd -k start
root 43344 0.0 0.0103244 864 pts/0 S+ 17:12 0:00 grep apache
useradd -M -s
/sbin/nologin
apache //创建一个用户用来运行apache
vim
/usr/local/apache2.4/conf/httpd.conf //修改配置文件改变apache运行身份
User
apache #修改运行用户daemon为apache
Group
apache #修改运行组为apache
id
apache
uid=500(apache) gid=500(apache) groups=500(apache)
更改目录权限
chown -R apache:apache /usr/local/apache2.4/ //默认是root,改为apache
至此 Apache部分安装部署完毕