LAMP 编译安装基于2.4

安装前准备

说明:

    操作系统:CentOS 6.7 64

    MySQL数据库版本:mariadb-5.5.48-linux-x86_64.tar.gz

    Apache 版本:httpd-2.4.12.tar.bz2

    PHP 版本:php-5.6.8.tar.bz2

    httpd服务器ip:192.168.1.5

    1.  配置好IPDNS 、网关,确保使用远程连接工具能够连接服务器

    2.     配置防火墙,iptables –F 清理防火墙规则或者关闭iptables

    3.     关闭SELINUX, setenforce 0  #立即生效(实际是宽容模式)

    4.  源码包编译安装位置:/usr/local/软件名字

    5.     安装编译需要的开发组件和依赖包

        yum -y groupinstall "Development Tools" "Server Platform Development"

        yum -y install pcre-devel openssl openssl-devel

 

二、编译安装apache

 1. httpd-2.4.12需要较新版本的aprapr-util,因此需要事先对其进行升级。升级方式有两种,一种是通过源代码编译安装,一种是直接升级rpm包。

  apr-1.5.2.tar.bz2

  apr-util-1.5.4.tar.gz

    (1) 编译安装apr

    tar jxvf apr-1.5.1.tar.bz2

    cd apr-1.5.1

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

    make && make install

     

    (2) 编译安装apr-util

    cd

    tar zxvf apr-util-1.5.4.tar.gz

    cd apr-util-1.5.4

     ./configure –prefix=/usr/local/apr-util –with-apr=/usr/local/apr/

    make && make install

     

 2.编译安装httpd-2.4.12

cd

tar jxvf httpd-2.4.12.tar.bz2

  cd httpd-2.4.12

  ./configure –prefix=/usr/local/apache –sysconfdir=/etc/httpd24 –enable-so –enable-ssl –enable-cgi –enable-rewrite –with-zlib –with-pcre –with-apr=/usr/local/apr –with-apr-util=/usr/local/apr-util –enable-modules=most –enable-mpms-shared=all –with-mpm=event

make && make install

参数的各项含义:

–prefix=/usr/local/apache          #安装位置

–sysconfdir=/etc/httpd24           #配置文件位置

–enable-so                         #支持DSO动态装载模块

–enable-ssl                        #支持SSL/TLS,可实现https协议访问,需要安装openssl-devel

–enable-cgi                        #支持CGI脚本

–enable-rewrite                    #支持URL重写

–with-zlib                         #使用指定的zlib压缩库,不指定路径会自动寻找

–with-pcre                         #使用指定的pcre库,增强的正则表达式分析工具;不指定路径会自动寻找 需已安装pcre-devel

–with-apr=/usr/local/apr           #指定依赖apr程序安装位置

–with-apr-util=/usr/local/apr-util #指定依赖apr-util程序安装位置

–enable-modules=most               #支持动态启用模块;all:所有,most:常用

–enable-mpms-shared=all            #编译并共享模块

–with-mpm=event                    #默认启用模块{prefork|worker|event}

 

 3. 配置man手册文件路径

         vi /etc/man.config            #系统通过/etc/man.config中的MANPATH来指定查找路径

         MANPATH /usr/local/apache/man

 4. 输出头文件至系统

Linux系统的库文件都存放在/usr/include中,程序使用时会到这个目录中调用,因此需要将我们安装后的库文件跟系统库文件做以关联。我们使用软连接的方式,将httpd的头文件目录整个连接到/usr/include目录下。

ln -sv /usr/local/apache/include/ /usr/include/httpd

 

 5. 配置apache 启动服务

    vi /etc/profile  #添加apache服务系统环境变量

    在最后添加下面这一行

export PATH=$PATH:/usr/local/apache/bin

cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd      #apache加入到系统启动

vi /etc/init.d/httpd24   #编辑文件

#!/bin/sh下面添加以下两行

#chkconfig:2345 10 90
#description:Activates/Deactivates Apache Web Server

 

加入服务列表:

chkconfig –add httpd24

chkconfig httpd on

service httpd24 start

 

访问测试

    blob.png

安装mariadb-5.5.48

1.  新建用户以安全方式运行进程:

    groupadd -r -g 306 mysql     #添加mysql组
    useradd -r -g 306 -u 306 mysql    #创建mysql用户并加入到mysql组
    mkdir -pv /mydata/data                # #创建MySQL数据库存放目录
    chown -R mysql.mysql /mydata/data  #设置MySQL数据库目录权限

 

2.  安装并初始化mariadb-5.5.48-linux-x86_64.tar.gz

tar xf mariadb-5.5.48-linux-x86_64.tar.gz -C /usr/local/

cd /usr/local/
ln -sv mariadb-5.5.48-linux-x86_64 mysql         #创建软连接到mysql目录,方便后面的配置
cd /usr/local/mysql
chown -R root:mysql ./*
scripts/mysql_install_db --datadir=/mydata/data --user=mysql     #生成mysql系统数据库

 

3. mysql提供主配置文件:

 mkdir /etc/mysql

cp support-files/my-large.cnf /etc/mysql/my.cnf

 vi /etc/mysql/my.cnf

datadir = /mydata/data                 #数据存放位置

innodb_file_per_table = on

skip_name_resolve = on                 #跳过名称反解

4.  mysql提供sysv服务脚本:

cp supper-files/mysql.server /etc/rc.d/init.d/mysqld

添加至服务列表:

chkconfig –add mysqld

vi /etc/profile   #mysql服务加入系统环境变量:在最后添加下面这一行

export PATH=$PATH:/usr/local/mysql/bin

source  /etc/profile #使配置立即生效

service mysqld start

blob.png

5.       数据库安全初始化

mysql_secure_installation

blob.png

 

 

编译安装php-5.6.8

 1. 解决依赖关系:

yum -y install bzip2-devel libmcrypt-devel libxml2-devel          #注意有些包用epel源才有

 2. 编译安装php-5.6.8

tar xf php-5.6.8.tar.bz2

cd php-5.6.8

./configure –prefix=/usr/local/php –with-mysql=/usr/local/mysql –with-openssl –with-mysqli=/usr/local/mysql/bin/mysql_config –enable-mbstring –with-freetype-dir –with-jpeg-dir –with-png-dir –with-zlib –with-libxml-dir=/usr –enable-xml  –enable-sockets –with-apxs2=/usr/local/apache/bin/apxs –with-mcrypt  –with-config-file-path=/etc –with-config-file-scan-dir=/etc/php.d –with-bz2  –enable-maintainer-zts

make && make install      #编译安装

php提供配置文件:

cp php.ini-production /etc/php.ini

 3. 编辑apache配置文件httpd.conf,以apache支持php

cd /etc/httpd24

cp httpd.conf{,.bak}     #配置文件做个备份

vi /etc/httpd24/httpd.conf

添加如下二行

  AddType application/x-httpd-php  .php

  AddType application/x-httpd-php-source  .phps

定位至DirectoryIndex index.html

修改为:

  DirectoryIndex  index.php  index.html

blob.png

blob.png

 

而后重新启动httpd,或让其重新载入配置文件即可测试php是否已经可以正常使用。

 

 4. 创建一个测试页面,访问测试是否成功

cd /usr/loaca/apache/htdocs

mv index.html index.php

vi index.php
<?php
        $link = mysql_connect('127.0.0.1','root','liangkai');
        if ($link)
            echo  "Success...";
        else
            echo  "Failure...";
 
        mysql_close();
        phpinfo();
?>

blob.png

部署phpMyAdmin来做测试使用

tar xf phpMyAdmin-4.5.5.1-all-languages.tar.bz2

mv phpMyAdmin-4.5.5.1-all-languages /usr/local/apache/htdocs/pma

cd /usr/local/apache/htdocs/pma

cp config.sample.inc.php config.inc.php

tr -d 'a-zA-Z0-9' < /dev/urandom | head -20 | md5sum           #生成一段随机数

vi config.inc.php

blob.png

blob.png

ab 做下压力测试

ab -c 20 -n 100 http://192.168.1.5/pma/index.php

blob.png

 

安装xcache,为php加速:

 1. 安装

tar xf xcache-3.2.0.tar.gz

cd xcache-3.2.0

/usr/local/php/bin/phpize

./configure –enable-xcache –with-php-config=/usr/local/php/bin/php-config

make && make install

 

安装结束时,会出现类似如下行:

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-zts-20131226/

 2. 编辑php.ini,整合php和xcache:

 

首先将xcache提供的样例配置导入php.ini

 mkdir /etc/php.d

cp xcache.ini /etc/php.d

 

说明:xcache.ini文件在xcache的源码目录中。

 

接下来编辑/etc/php.d/xcache.ini,找extension开头的行,修改为如下行:

extension = /usr/local/php/lib/php/extensions/no-debug-zts-20131226/xcache.so

 

service httpd24 restart

 

ab 做下压力测试,看看效果如何

blob.png

原创文章,作者:liangkai,如若转载,请注明出处:http://www.178linux.com/13855

(0)
liangkailiangkai
上一篇 2016-11-21 10:13
下一篇 2016-11-21 13:33

相关推荐

  • redis + keepalived 双主模型

    redis + keepalived 双主模型 架构图:    1.vip默认绑定在redis主上,由redis主提供服务,redis从为备用节点。(实际上提供服务的只是vip) 2.当redis主挂掉,vip会默认漂移至redis从。由redis从提供服务,redis主已经挂掉。 3.当redis主已经恢复,redis从继续提供服务和挂…

    Linux干货 2016-06-23
  • 第三周作业

      1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 who | cut -d" " -f1 | sort -u who | cut -d" " -f1 | uniq 2、取出最后登录到当前系统的用户的相关信息。    who | tail -1 …

    Linux干货 2016-11-19
  • grep、正则表达式

    grep、正则表达式 grep:文本过滤(模式:pattern)工具 作用:文本搜索工具,根据用户指定的“模式”对目标文本逐行进行匹配检查;打印匹配到的行。 模式:由正则表达式字符及文本字符所编写的过滤条件。 正则表达式:由一类特殊字符及文本所编写的模式,其中有些字符不表示字符字面意义,而表示控制或通配的功能。 正则表达式分为两类:基本正则表达式、扩展正则表…

    Linux干货 2017-04-06
  • LVM逻辑卷的缩减与删除,LVM逻辑卷快照,btrfs文件系统,网络管理

    逻辑卷缩减 缩减的时候要注意缩减的空间不要超过文件系统的空间,不然缩减的时候会损坏文件系统。 第一步要先取消挂载(必须) 第二部检查文件完整性(必须) e2fsck -f /dev/vg0/lv0 第三部文件系统缩减,先缩减文件系统. resize2fs /dev/vg0/lv0 10G  (缩减到剩下10G) 第四步逻辑卷组的缩减 lvreduc…

    Linux干货 2016-09-06
  • 浅谈Nginx(二)—http下server配置

    浅谈Nginx(二)—http下server配置 此文介绍Nginx下的http模块,着重介绍http模块下的server服务 ——–依据”马哥教育”主讲人马永亮导师的上课笔记整理——- 目录  一. http相关的基本配置:     1)…

    系统运维 2017-02-07
  • 元数据、修改时间戳、文件名通配、定义命令的别名、I/O重定向及管道

      文件的元数据 文件的数据分为两类:一类为元数据,既属性数据;一种就是数据本身:  数据是指普通文件中的实际数据  元数据指用来描述一个文件的特征的系统数据,诸如访问权限、文件拥有者以及文件数据块的分布信息(inode…)等等 那么如何查看文件的详细信息? stat命令: 功能说明:    显示inode内容命令用法:    stat…

    Linux干货 2016-11-06