Lamp常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。随着开源潮流的蓬勃发展,开放源代码的LAMP已经与J2EE和.Net商业软件形成三足鼎立之势,并且该软件开发的项目在软件方面的投资成本较低,因此受到整个IT界的关注。从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决方案.
LAMP指的Linux(操作系统)、ApacheHTTP 服务器,MySQL(有时也指MariaDB,数据库软件)和PHP(有时也是指Perl或Python)的第一个字母,一般用来建立web应用平台。
源码搭建LAMP平台的优势:
1.更高版本
2.更加丰富的功能
3.个性化设置
环境:
Development tools
ServerPlatform Development
AdditionalDevelopment
一.安装mysql
mysql-5.6.15-linux-glibc2.5-x86_64.tar.gz
1. 卸载mysql mysql-server mysql-libs
yum --disablerepo=\* --enablerepo=c6-mediaremove mysql-server mysql mysql-libs -y
yum --disablerepo=\* --enablerepo=c6-mediainstall libaio
2.拆包
tar -zxvf mysql-5.6.10-.tar.gz -C /usr/local/src
查看install-source文件,按照提示要求进行安装
安装cmake
yum--disablerepo=\* --enablerepo=c6-media install cmake –y
在执行cmake .过程中,缺少一些必要的安装包,需要进行安装
yum--disablerepo=\* --enablerepo=c6-media install ncurses-devel –y
make && make install
创建用户以及组
groupadd -r mysql
useradd -r -g mysql mysql
cd mysql
chown -R mysql:mysql .
./scripts/mysql_install_db --user=mysql //初始化
chown -R root .
chown -R mysql data
cp my.cnf /etc 【产生mysql server 配置文件】
cp mysql.server /etc/init.d/mysqld 【产生mysql server 控制文件】
chmod a+x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
3.改变PATH变量
vim /etc/profile
PATH=$PATH:/usr/local/mysql/bin
. /etc/profile
4.mysql库文件的输出
echo "/usr/local/mysql/lib" >/etc/ld.so.conf.d/mysql.conf
ldconfig
5.手册
echo "MANPATH /usr/local/mysql/man">>/etc/man.config
6.include头文件处理
cd /usr/include
ln –s /usr/local/mysql/include/ mysql
二。安装httpd httpd-2.4.9.tar.bz2
1.安装apr
./configure --prefix=/usr/local/apr
make && make install
2.安装apr-util
./configure --prefix=/usr/local/apr-utils
--with-apr=/usr/local/apr/bin/apr-1-config //指向apr-config的完整路径
make &&make install
3.安装httpd-2.4.9
a. yum --disablerepo=\*--enablerepo=c6-media install pcre-devel openssl-devel
b. 查看配置选项
./configure --help 看选项
./configure常用的选项有如下
--prefix=/usr/local/apache
--sysconfdir=/etc/httpd
--enable=so启用以dso模式加载模块
--enable-ssl
--with-ssl=/usr/local/ssl
--enable-rewrite 支持URL重写
--with-z 使用zlib
--enable-mods-shared=most
c ./configure \
--prefix=/usr/local/apache \ //安装路径
--sysconfdir=/etc/httpd\ //配置文件的路径
--enable-so\ //启用以dso模式加载模块
--enable-ssl \ //支持ssl协议
--enable-rewrite \ //支持重定向(地址重写)
--with-apr=/usr/local/apr/bin/apr-1-config\ //指明Apr全路径
--with-apr-util=/usr/local/apr-util/bin/apu-1-config\ //指明Apr-util全路径
--with-pcre \ //支持poll正则表达式
-with-z \ //支持压缩功能
--enable-mpms-shared=all\ //支持多种多进程处理机制
d. make && make install
e. 对bin二进制指令操作:
改变环境变量,添加搜索路径
vim /etc/profile PATH=$PATH:/usr/local/apache/bin
. /etc/profile
f: MAN手册处理
echo“MANPATH /usr/local/apache/man” >>/etc/man.config
g:控制文件
在/etc/init.d下编写httpd的控制脚本,实现service调用和chkconfig管理
控制脚本的编写: vim /etc/init.d/httpd
#!/bin/bash
# chkconfig: 2345 88 44
# description: the apache server
prog=/usr/local/apache/bin/httpd
lockfile=/var/lock/subsys/httpd
start(){
if [ -e $lockfile ];then
echo "the apacheserver is started"
else
echo -n "the apacheserver is starting......"
sleep 1
$prog -k start&>/dev/null && echo "ok" && touch $lockfile ||echo "fail"
fi
}
stop(){
if [ ! -e $lockfile ];then
echo "the apacheserver is stoped"
else
echo -n "the apacheserver is stoping......"
sleep 1
$prog -k stop&>/dev/null && echo "ok" && rm -rf $lockfile|| echo "fail"
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "USAGE:START|STOP|RESTART"
;;
Esac
添加chkconfig管理:
Chkconfig --add httpd
三。php的安装
php的官方网站 www.php.net
知名php的配置选项
./configure --prefix=/usr/local/php
--with-apxs2=/usr/local/apache/bin/apxs
将php编译成apache的模块,允许apache的apxx调用该模块
--with-mysql=/usr/local/mysql 指明mysql的安装位置
--with-mysqli=/usr/local/mysql/bin/mysql_config调用myql接口
-enable-mbstring=all
--with-xml
--with-png
--with-jpeg
--with-zlib
--with-gd
--with-freetype
1.拆包:tar -jxvf php-5.5.8.tar.bz2 –C/usr/local/src
2. cd/usr/local/src/php-5.5.8
./configure \
--prefix=/usr/local/php \ 指定安装路径
--with-config-file-path=/etc/php \ 指定php.ini存放路径
--with-config-file-scan-dir=/etc/php5.d \ 指定额外功能的ini文件
--with-apxs2=/usr/local/apache/bin/apxs \
将php编译成apache的模块,允许apache的apxx调用该模块
--with-mysql=/usr/local/mysql \ 指定mysql安装路径
--with-pdo-mysql=/usr/local/mysql \ 支持pdo
--with-mysqli=/usr/local/mysql/bin/mysql_config\ mysql高级功能对应的文件
--enable-mbstring \
--with-zlib \
--with-gd \
编译时所需要的软件包
Yum –disablerepo=\* --enablerepo=c6-mediainstall libxml2-devel libpng-devel
3. make && make install
4. mkdir -pv /etc/php /etc/php5.d
Cd /use/local/src/php5.5.8
cp php.ini-production /etc/php/php.ini
cp.libs/libphp5.so /usr/local/apache/modules/libphp5.so
cp .libs/libphp5.la /usr/local/apache/modules/libphp5.la
5. vim httpd.conf 查看是否加载了php的模块
并在httpd.conf 加入 AddType application/x-httpd-php .php
6.编辑页面测试PHP和mysql之间的链接
Vim /usr/local/apache/htdocs/index1.php
<?php
$link=Mysql_connect(‘127.0.0.1’,’root’,’123’);
If($link)
Echo“ok”;
Else
Echo“not”;
?>