编译安装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

相关推荐

  • N25 第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。   2、取出最后登录到当前系统的用户的相关信息。 3、取出当前系统上被用户当作其默认shell的最多的那个shell。   4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt…

    Linux干货 2017-01-04
  • Linux网络命令学习

    Linux网络命令之网络环境查看命令:ifconfig:查看与配置网络状态命令(只能看到IP地址和子网掩码)ifup 网卡设备名:启用该网卡设备,如:ifup eth0和ifdown lonetstat 选项:  -t:列出TCP协议端口  -u:列出UDP协议端口  -l:仅列出在监听状态网络服务  -a:查看所有连…

    Linux干货 2017-06-25
  • Linux基础知识(二)

     本文的主要内容是:  1.Linux上的基本文件管理命令  2bash的特性及其命令状态返回值  3.bash的花括号展开机制  4.文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息  5如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?  &nb…

    Linux干货 2016-09-25
  • 高性能集群软件Keepalived

    Keepalived的介绍以及安装与配置

    2017-09-18
  • ​20151208完成了第二天课程中的第一课:Osey Linux发行版(01)

    完成了第二天课程中的第一课:Osey Linux发行版(01) 今天公司晚上有加班,回来晚了。只完成了第一课:Osey Linux发行版(01) 简要笔记如下: Linux哲学思想:    1、一切皆文件:             把几乎所有的资源,包括硬件设备都组织为文件格式;…

    Linux干货 2015-12-10
  • 第二周博客作业

    1.Linux上的文件管理类命令都有那些,其常用的使用方法及其相关示例演示。
    2.Bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。
    3.请使用命令行展开功能来完成以下的练习。
    4.文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
    5.如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?
    6.显示/var目录下所有以1开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其他字符)的文件或目录。
    7.显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
    8.显示/etc目录下,以非字母开头,后面跟了一个字母以及其他任意长度任意字符的文件或目录。
    9.在/tmp目录下创建以tgile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22
    10.复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
    11.复制/etc目录下所有以.d结尾的文件或目录到/tmp/mytest2目录中。
    12.复制/etc目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。

    2018-03-22