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
下一篇 2016-11-21

相关推荐

  • Linux中基础且常用的指令介绍及示例

    首先需要明确的是:Linux中无论是指令还是选项或者参数,请认真对待字母大小写。Linux中通用的命令使用方式是:命令 [选项] [参数] 1. pwd pwd:print name of current/working directory,即打印当前的目录(工作目录),光杆处于哪个目录下就会在终端上输出当前路径的绝对路径。用法示例: [lanti…

    Linux干货 2016-10-30
  • 堡垒机-麒麟开源堡垒机苹果 Mac支持版本发布

      近日,麒麟开源堡垒机团队开发测试了支持Mac OS苹果操作系统的Web插件,苹果系统用户可以直接和Windows用户一样,登录到Web平台,使用点击的方式调动运维工具并且登录到目标系统进行操作运维。 Mac OS插件支持ssh、telnet、rdp、vnc、x11、sftp、ftp、应用发布等所有协议。   注:麒…

    Linux干货 2016-05-19
  • 马哥教育网络班21期-第四周课程练习

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 cp -a /etc/skel/ /home/tuser1 chmod -R 700 /home/tuser1/  2、编辑/etc/group文件,添加组hadoop。 echo "hadoop:x:2…

    Linux干货 2016-08-05
  • Linux发展史

    适用对象:本文适合希望开始学习以及想了解Linux的朋友阅读。本文中所有内容仅供参考,不作为科学依据。 一、      Linux的起源 最初的计算机其实是具有单一功能的大型计算器,只能完成指定或者设定好的工作。多数情况下计算机资源是处于空闲状态的,为了不使资源浪费,就需要使计算机能够或者可以进行多种工作。或…

    Linux干货 2016-10-14
  • 计算机组成原理

                                 计算机组成原理 Linux 操作系统是UNIX 操作系统的一种克隆系统。它诞生于1991 年的10 月5 日(这是第一次正式向外公布的时间)。以后借助于…

    Linux干货 2016-10-27
  • 马哥教育网络19期+第五周练习博客

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行;   grep "^[[:space:]]\+.*" /boot/grub/grub.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行; &n…

    Linux干货 2016-06-19