编译安装LAMP

编译安装LAMP

(1) 系统环境:CentOS 6, 7 
    CentOS 6:
apr, apr-util的版本为1.3.9,不适用于httpd-2.4; 
    CentOS 7:
apr, apr-util的版本为1.4+, 
(2) 开发环境: 
    Development Tools, Server Platform Development 
(3) 各程序版本 
    httpd: 2.2, 2.4 
    php:5.3.x 5.4.x, 5.6.x 
    mysql:5.1, 5.5, 5.6, 5.7, 5.8, 8.0 
    mariadb:5.x, 10.x 
(4) httpd+php 
    php的编译选项: 
        Modules:
--with-apxs 
        httpd MPM: 
            prefork: 
            worker, event:专用选项–enable-maintainer-zts 
    fpm:
--enable-fpm

本次安装以CentOS 7为例进行安装

安装httpd-2.4

[root@centos7 ~]# mkdir -p /usr/local/lamp  #创建lamp目录
[root@centos7 ~]# yum -y groupinstall "Development Tools" "Server Platform Development"  #安装开发环境
[root@centos7 ~]# yum -y install pcre-devel openssl-devel libevent-devel apr-devel apr-util-devel  #安装依赖包
[root@centos7 ~]# useradd -r -s /sbin/nologin apache  #创建apache系统用户
[root@centos7 ~]# tar xf httpd-2.4.6.tar.bz2  #解压
[root@centos7 ~]# cd httpd-2.4.6/
[root@centos7 httpd-2.4.6]# ./configure --prefix=/usr/local/lamp/apache2 --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork --with-pcre --with-zlib --with-apr=/usr --with-apr-util=/usr  #配置httpd
[root@centos7 httpd-2.4.6]# make   #编译
[root@centos7 httpd-2.4.6]# make install #安装
[root@centos7 ~]# echo "export PATH=/usr/local/lamp/apache2/bin:$PATH" > /etc/profile.d/httpd.sh  #配置PATH环境变量
[root@centos7 ~]# . /etc/profile.d/httpd.sh   #生效
[root@centos7 ~]# vim /etc/httpd/httpd.conf   #编辑配置文件

287)C{F]5MS5S7{PE[G@357.png

8JL)6O$0I(7S7B6[81U`_N9.png

[root@centos7 ~]# apachectl start  #启动httpd服务

G$$Z}(FYJ5MFKLX){[C[TSW.png

]PK)ZMXWWT7T1S0({HSJ_KK.png

安装mariadb

安装MariaDB: 
    1.预制的包管理器格式的程序包: 
        rpm包: 
            os vendor:mariadb-devel 
            MariaDB官方 
    2.通用二进制格式的程序包: 
    3.源码包编译:项目构建工具为cmake, 而非流行的make;

本次以通用二进制格式包的安装配置

[root@centos7 ~]# useradd -r -s /sbin/nologin mysql  #创建mysql系统用户
[root@centos7 ~]# tar xf mariadb-VERSION-linux-x86_64.tar.gz -C /usr/local/lamp  #解压至/usr/local/lamp目录下
[root@centos7 ~]# cd /usr/local/lamp
[root@centos7 lamp]# ln -s mariadb-VERSION-linux-x86_64 mysql  #创建软连接
[root@centos7 ~]# cd mysql
[root@centos7 mysql]# chown -R mysql:mysql ./*  #修改属主属组为mysql
[root@centos7 mysql]# mkdir -pv /mydata/data  #为mysql创建数据目录
[root@centos7 mysql]# chown -R mysql:mysql /mydata/data  #修改数据目录属主属组为msql
[root@centos7 mysql]# ./scripts/mysql_install_db  --user=mysql  --datadir=/mydata/data --skip_name_resolve   #安装mysql
[root@centos7 mysql]# cp support-files/my-large.cnf  /etc/my.cnf  #生成配置文件
[root@centos7 mysql]# cp support-files/mysql.server  /etc/rc.d/init.d/mysqld   #生成服务脚本文件
[root@centos7 mysql]# chkconfig --add mysqld   #添加开机自启动
[root@centos7 mysql]# chkconfig --level 2345 mysqld on  #开机在2345运行级别下启动

[root@centos7 mysql]# vim /etc/my.cnf  #编辑配置文件

%RS3FI0M@E4I(DW]4{9N33U.png

[root@centos7 mysql]# service mysqld start   #启动mysql服务
Starting MySQL.. SUCCESS!
[root@centos7 mysql]#

1E2E4)XP}VB%I_P}F2U(E8S.png

[root@centos7 ~]# echo "export PATH=/usr/local/mysql/bin:$PATH" > /etc/profile.d/mysql.sh   #配置PATH环境变量
[root@centos7 ~]# . /etc/profile.d/mysql.sh   #生效
[root@centos7 ~]# mysql_secure_installation   #可对数据库做安全配置  
[root@centos7 ~]# mysql  #测试数据库
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 5.5.46-MariaDB-log MariaDB Server

Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>     #数据库配置成功!!!!

基于module安装php

Modules:--with-apxs 
    httpd MPM: 
        prefork: 
        worker, event:专用选项
--enable-maintainer-zts 

[root@centos7 ~]# yum -y install gd-devel freetype-devel libxml2-devel libmcrypt-devel   #安装php依赖包
[root@centos7 ~]# tar xf php-5.4.40.tar.bz2  #解压
[root@centos7 ~]# cd php-5.4.40/
[root@centos7 php-5.4.40]# ./configure --prefix=/usr/local/lamp/php5 --with-mysql=/usr/local/lamp/mysql --with-mysqli=/usr/local/lamp/mysql/bin/mysql_config --with-openssl --enable-mbstring --enable-xml --enable-sockets --with-freetype-dir --with-gd --with-libxml-dir=/usr --with-zlib --with-jpeg-dir --with-png-dir --with-mcrypt --with-apxs2=/usr/local/lamp/apache2/bin/apxs --with-config-file-path=/etc/php.ini --with-config-file-scan-dir=/etc/php.d/  #配置php参数
[root@centos7 php-5.4.40]# make  #编译
[root@centos7 php-5.4.40]# make install  #安装
[root@centos7 php-5.4.40]# cp php.ini-production /etc/php.ini  #复制配置文件
[root@centos7 php-5.4.40]# vim /etc/httpd/httpd.conf  #编辑httpd配置文件整合httpd+php

U~2WL7IY2OV2~GWT4W]4I_M.png

W~BZECTA}_BP2CIRQCOWK3J.png

[root@centos7 ~]# vim /usr/local/lamp/apache2/htdocs/index.php   #创建默认访问页

EHROD{PZ_11Z2N`1_1A@H[F.png

测试

I~GIT6%CXQ]F[1CF9}Z~KI0.png

基于php-fpm安装php

fpm:--enable-fpm 

[root@centos7 ~]# yum -y install gd-devel freetype-devel libxml2-devel libmcrypt-devel  #安装php依赖包
[root@centos7 ~]# tar xf php-5.4.40.tar.bz2  #解压
[root@centos7 ~]# cd php-5.4.40/
[root@centos7 php-5.4.40]# ./configure --prefix=/usr/local/lamp/php5 --with-mysql=/usr/local/lamp/mysql --with-mysqli=/usr/local/lamp/mysql/bin/mysql_config --with-openssl --enable-mbstring --enable-xml --enable-sockets --with-freetype-dir --with-gd --with-libxml-dir=/usr --with-zlib --with-jpeg-dir --with-png-dir --with-mcrypt --enable-fpm --with-config-file-path=/etc/php.ini --with-config-file-scan-dir=/etc/php.d/  #配置php参数
[root@centos7 php-5.4.40]# make  #编译
[root@centos7 php-5.4.40]# make install  #安装
[root@centos7 php-5.4.40]# cp php.ini-production /etc/php.ini  #复制配置文件
[root@centos7 php-5.4.40]# cp /usr/local/lamp/php5/php-fpm.conf.default /usr/local/lamp/php5/php-fpm.conf  #生成php-fpm配置文件
[root@centos7 php-5.4.40]# vim /etc/httpd/httpd.conf  #编辑httpd配置文件整合httpd+php

U~2WL7IY2OV2~GWT4W]4I_M.png

W~BZECTA}_BP2CIRQCOWK3J.png

)YSFV7Y8R~Z9$$2UVENP2_B.png

[root@centos7 php-5.4.40]# cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm   #生成php-fpm服务脚本文件
[root@centos7 php-5.4.40]# chkconfig --add php-fpm   #添加php-fpm开机自启动
[root@centos7 php-5.4.40]# chkconfig --level 2345 php-fpm on   #开机在2345运行级别下开启此服务
[root@centos7 ~]# service php-fpm start   #开启php-fpm服务

EME%SB{KZGEU[%PUORLV(@D.png

测试

I~GIT6%CXQ]F[1CF9}Z~KI0.png

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

(0)
zhai796898zhai796898
上一篇 2016-11-03 21:32
下一篇 2016-11-03 23:08

相关推荐

  • Linux小工具之cheat

    随着linux学习的深入,接触到的命令越来越多,此时,考验脑力的时候就到了,除非你是”脑王”,否则面对多如牛毛的linux命令,真的会崩溃!linux前辈们貌似也被同样的问题所困扰,所以,他们发明了cheat。cheat是在GNU通用公共许可证下,为Linux命令行用户发行的交互式备忘单应用程序。它提供显示Linux命令使用案例,包括该命令所有的选项和简短但…

    2017-08-10
  • N22-第六周作业

    请详细总结vim编辑器的使用并完成以下练习题 单词间跳转 w:下一个单词的词首 e:当前或后一个单词的词尾 b:当前或前一个单词的词首 行首行尾跳转: ^:跳转至行首的第一个非空白字符 0:跳转至行首 $: 跳转至行尾 句间跳转: ) ( 段落跳转: } { 字符编辑 x:删除光标所在处的字符 #x:删除光标所在处起始的#个字符 xp:交换光标所在处的字符与…

    Linux干货 2016-09-26
  • Mariadb数据库复制系列(一):主从复制

      实验一:MySQL主从复制的实现 1、实验环境 确保各节点之间的时间同步 2、修改主节点的mysql服务配置文件,让其符合主从架构中主节点的要求 3、查看主节点现有数据情况和二进制日志使用情况 4、对主节点的数据利用xtrabackup进行完全备份 由于两个从节点是后期加入,故采取备份主节点的数据,还原到从节点上,然后让从节点从备份时刻的二进制日志的位置…

    2016-11-24
  • Hello World, Hello Linux.

    文笔不好,请见谅。

    2018-03-26
  • 第二周作业

    一、文件管理类命令     1、cp:复制文件        单文件复制cp source dest,如果dest存在且dest不是目录,则覆盖目标文件。如果dest不存在,则自行创建dest文件;如果source是目录,则cp命令不会执行。如果source是链接文件,则复制的是链接文件指向的文件内…

    Linux干货 2016-12-11
  • Linux启动过程及系统初始化

    一、前言     服务器在正常的运行过程中,很少有重启的机会。在正常的情况下,也很少有出现启动异常的情况,但是在遭到了人为或者误操作的情况后,可能会出现启动异常的情况。为了加深学习系统启动流程,能够更加深入理解Linux系统的启动流程。总结了这篇文字。 二、简述启动流程     …

    Linux干货 2016-11-23