CentOS 7.4搭建LAMP,LAMP:Linux、Apache、MySQL、PHP。

目录:
第一部分 准备工作
第二部分 安装Apache服务
第三部分 安装MySQL服务
第四部分 搭建PHP运行环境
第五部分 LAMP架构应用

第一部分 准备工作
一:服务器:Linux系统—CentOS 7.4;
IP地址:192.168.80.10

客户端:以WIN7为例,测试验证结果,与服务器在同一网段;
IP地址:192.168.80.2

二:下载压缩包
http://httpd.apache.org/download.cgi //http压缩包
http://apr.apache.org/download.cgi //http插件包
http://mirrors.sohu.com/mysql/ //mysql压缩包
http://www.php.net/downloads.php //PHP压缩包
https://www.phpmyadmin.net/ //PHPMyAdmin压缩包

//apr-1.6.2.tar.gz和apr-util-1.6.0.tar.gz是httpd2.4以后的版本所需要的插件,必须安装
//phpMyAdmin是一个使用PHP语言编写,用来管理MySQL数据库的Web应用系统,后面LAMP搭建完成后用来验证。

//将压缩包放到linux系统下

三:将防火墙与selinux关闭

第二部分 安装Apache服务
一:安装编译工具与插件
[root@localhost ~]# yum -y install \

gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl

二:解压:
[root@localhost ~]# tar xf apr-1.6.2.tar.gz
[root@localhost ~]# tar xf apr-util-1.6.0.tar.gz
[root@localhost ~]# tar xf httpd-2.4.29.tar.bz2

//将插件放入httpd目录下
[root@localhost ~]# mv apr-1.6.2 httpd-2.4.29/srclib/apr
[root@localhost ~]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util

三:配置(自定义个性化配置)
[root@localhost ~]# cd httpd-2.4.29 //必须进入安装目录下
[root@localhost httpd-2.4.29]# ./configure \

--prefix=/usr/local/httpd \ //指定将httpd程序安装到/usr/local/httpd目录下
--enable-so \ //启用动态加载模块功能
--enable-rewrite \ //启用网页地址重写功能,用于网站优化及目录迁移
--enable-charset-lite \ //启用字符集支持,以便支持使用各种字符集编码的网页
--enable-cgi //启用CGI脚本程序支持,便于扩展网站的应用访问能力

四:编译及安装
[root@localhost httpd-2.4.29]# make && make install

//将httpd服务添加到系统服务
[root@localhost httpd-2.4.29]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
[root@localhost httpd-2.4.29]# vi /etc/init.d/httpd
添加以下两行(注意,“#”不能省略):

保存退出
[root@localhost httpd-2.4.29]# chkconfig --add httpd //将httpd加入到SERVICE管理器
[root@localhost httpd-2.4.29]# systemctl daemon-reload //重载系统系统管理器

五:编辑httpd主配置文件
[root@localhost httpd-2.4.29]# vi /usr/local/httpd/conf/httpd.conf
修改以下内容:
ServerName www.aa.com
保存退出

//优化执行路径(执行程序文件的原路径不在PATH环境变量中,做个软链接使其可以执行)
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/bin/* /usr/local/bin/

//检查语法错误
[root@localhost httpd-2.4.29]# httpd –t
或者:[root@localhost httpd-2.4.29]# apachectl –t

//查看程序版本

六:启动服务
[root@localhost httpd-2.4.29]# systemctl start httpd
[root@localhost httpd-2.4.29]# systemctl enable httpd //将httpd设为开机启动
[root@localhost httpd-2.4.29]# netstat -anpt | grep 80 //查看httpd服务运行状态

七:验证
用WIN7客户端访问服务器
浏览器访问:http://192.168.80.10

验证成功
(注意,网页默认显示内容为:/usr/local/httpd/htdocs/index.html)

第三部分 安装MySQL服务
一:安装编译工具与插件
[root@localhost ~]# yum -y install \

ncurses \
ncurses-devel \
bison \
cmake

二:建立数据库程序用户
[root@localhost ~]# useradd -s /sbin/nologin mysql

三:解压mysql安装包
[root@localhost ~]# tar xf mysql-boost-5.7.20.tar.gz -C /opt/

四:配置(个性化配置及优化项目)
[root@localhost ~]# cd /opt/mysql-5.7.20/
[root@localhost mysql-5.7.20]# cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ //定义安装目录
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ //连接数据库socket路径
-DSYSCONFDIR=/etc \ //指定初始化参数文件目录(my.cnf)
-DSYSTEMD_PID_DIR=/usr/local/mysql \ //数据库目录
-DDEFAULT_CHARSET=utf8 \ //指定默认使用的字符集编码
-DDEFAULT_COLLATION=utf8_general_ci \ //指定默认使用的字符集校对规则,utf8_general_ci是适用于UTF-8字符集的通用规则
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ //支持InnoDB引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ //安装支持数据库分区
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=boost \
-DWITH_SYSTEMD=1
(注意:如果在CMAKE的过程中有报错,当报错解决后,需要把源码目录中的
CMakeCache.txt文件删除,然后再重新CMAKE,否则错误依旧)

五:编译及安装
[root@localhost mysql-5.7.20]# make
[root@localhost mysql-5.7.20]# make install

//对数据库目录进行权限设置
[root@localhost mysql-5.7.20]# chown -R mysql.mysql /usr/local/mysql/

六:编辑mysql主配置文件
[root@localhost mysql-5.7.20]# vi /etc/my.cnf
(里面内容全部删除,替换成以下内容)
[client]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock

[mysql]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock

[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
character_set_server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket = /usr/local/mysql/mysql.sock
server-id = 1

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES

[root@localhost mysql-5.7.20]# chown mysql:mysql /etc/my.cnf

六:设置环境变量
[root@localhost mysql-5.7.20]# echo 'PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile
//把这两个路径添加到环境变量中,并放到profile文件中使之开机自运行,否则不生效
[root@localhost mysql-5.7.20]# echo 'export PATH' >> /etc/profile
//设为全局变量,使它使用环境更广
[root@localhost mysql-5.7.20]# source /etc/profile //立即生效

七:初始化数据库
[root@localhost ~]# cd /usr/local/mysql/
[root@localhost mysql]# bin/mysqld \

--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data

八:添加系统服务
[root@localhost mysql]# cp usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
[root@localhost mysql]# systemctl daemon-reload

九:开启mysql服务
[root@localhost mysql]# systemctl start mysqld
[root@localhost mysql]# netstat -anpt | grep 3306 //查看服务运行状态

[root@localhost mysql]# systemctl enable mysqld //设为开机启动

十:访问数据库操作
[root@localhost mysql]# mysqladmin -u root -p password "abc123"
//给root账号设置密码为abc123
注意:提示输入的是原始密码(原始没有密码,直接回车)
[root@localhost mysql]# mysql -u root –p //登录数据库
注意:有密码的加“-p”,如果没有密码不用加“-p”


//数据库安装配置成功,退出则输入”quit“

第四部分 搭建PHP运行环境
一:安装编工具及插件
[root@localhost ~]# yum -y install \

libjpeg \
libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 \
libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel
(注意:如果安装过程出错,修改下面文件,添加一行)
vi /usr/local/httpd/bin/apxs
#!/usr/bin/perl –w

二:解压安装包
[root@localhost ~]# tar xjvf php-7.1.10.tar.bz2

三:配置(个性化配置及优化项目)
[root@localhost php-7.1.10]# cd php-7.1.10
[root@localhost php-7.1.10]# ./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/httpd/bin/apxs \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
--enable-tokenizer \
--enable-zip

四:编译与安装
[root@localhost php-7.1.10]# make
[root@localhost php-7.1.10]# make install

五:编辑配置文件
[root@localhost php-7.1.10]# cp php.ini-development /usr/local/php/lib/php.ini
//创建配置文件
[root@localhost php-7.1.10]# vi /usr/local/php/lib/php.ini //编辑配置文件
mysqli.default_socket = /usr/local/mysql/mysql.sock //将php与mysql关联
date.timezone = Asia/Shanghai //时区设置
[root@localhost php-7.1.10]# /usr/local/php/bin/php –m //验证安装的模块

六:关联php与apache服务
[root@localhost php-7.1.10]# vi /etc/httpd.conf //编辑Apache配置文件,使httpd支持php网页解析
添加以下两行内容:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
修改以下内容:
DirectoryIndex index.php index.html //此处注意,php文件必须放前面,优先读取
[root@localhost php-7.1.10]# rm -f /usr/local/httpd/htdocs/index.html //删除默认html文件
[root@localhost php-7.1.10]# vi /usr/local/httpd/htdocs/index.php //编辑php测试网页
添加以下内容(php信息)
<?php
phpinfo();
?>
保存退出
[root@localhost php-7.1.10]# systemctl stop httpd
[root@localhost php-7.1.10]# systemctl start httpd //重启httpd服务

七:验证

  1. 用win7访问192.168.80.10
    (注意:如果访问不了,用netstat检查httpd运行状态)

  2. 测试数据库
    [root@localhost ~]# mysql -u root –p //登录数据库(输入上面设置的root密码)
    CREATE DATABASE myadm; //创建数据库myadm
    GRANT all ON myadm. TO 'myadm'@'%' IDENTIFIED BY 'admin123'; //授权
    GRANT all ON myadm.
     TO 'myadm'@'localhost' IDENTIFIED BY 'admin123';
    flush privileges; //刷新权限

    //重启mysql服务
    [root@localhost ~]# systemctl restart mysqld

//编辑index.php文件(将里面原来内容删除,添加以下内容)
<?php
$link=mysqli_connect('192.168.80.40','myadm','admin123');
if($link) echo "<h1>Success!!</h1>";
else echo "Fail!!";
?>

//重启http服务
[root@localhost ~]# systemctl stop httpd
[root@localhost ~]# systemctl start httpd

//用win7访问服务器地址192.168.80.10

//验证成功

第五部分 LAMP架构应用
部署phpMyAdmin系统:
phpMyAdmin是一个使用PHP语言编写,用来管理MYSQL数据库的Web应用系统
一:安装phpMyadmin
[root@localhost ~]# yum install -y unzip
(由于我下载的phpMyadmin是zip格式压缩包,所以要安装unzip命令解压)
//解压phpMyadmin
[root@localhost ~]# unzip phpMyAdmin-4.7.6-all-languages.zip -d /opt/
[root@localhost ~]# cd /opt/
[root@localhost opt]# mv phpMyAdmin-4.7.6-all-languages /usr/local/httpd/htdocs/myadm //将文件移到apache目录下

二:创建phpMyadmin配置文件
[root@localhost opt]# cd /usr/local/httpd/htdocs/myadm/
[root@localhost myadm]# cp config.sample.inc.php config.inc.php

三:编辑配置文件
[root@localhost myadm]# vi config.inc.php
$cfg['Servers'][$i]['host'] = '127.0.0.1'; //把localhost 改成IP
保存退出

四:重启apache服务
[root@localhost myadm]# systemctl stop httpd
[root@localhost myadm]# systemctl start httpd

五:验证
用win7访问http://192.168.80.10/myadm

输入root帐号与密码登录

验证成功。

本文永久更新链接地址https://www.linuxidc.com/Linux/2018-03/151133.htm

https://www.linuxidc.com/Linux/2018-03/151133.htm

CentOS 7.4下源码编译安装配置LAMP环境详解的更多相关文章

  1. CentOS 6.6 下源码编译安装MySQL 5.7.5

    版权声明:转自:http://www.linuxidc.com/Linux/2015-08/121667.htm 说明:CentOS 6.6 下源码编译安装MySQL 5.7.5 1. 安装相关工具# ...

  2. inux centos7下源码 tar安装5.7.26详解

    inux centos7下源码 tar安装5.7.26图文详解 官网地址 https://dev.mysql.com/downloads/mysql/ 1.卸载Linux系统上自带的mysql插件(o ...

  3. CentOS 6.3下源码编译安装LAMP

    一.简介 什么是LAMP    LAMP是一种Web网络应用和开发环境,是Linux, Apache, MySQL, Php/Perl的缩写,每一个字母代表了一个组件,每个组件就其本身而言都是在它所代 ...

  4. linux centos 7.5下 源码编译安装 lua环境

    lua 5.3.5 下载安装时发现缺少库 readline 需要添加依赖 yum search readline 看有哪些包 安装带有 devel 字样的 安装无 devel 的非开发包,通常不会自动 ...

  5. Linux 下源码编译安装 vim 8.1

    前言 目前 linux 的各个发行版基本上都是带了一个 vi 编辑器的,而本文要说的 vim 编辑器对 vi 做了一些优化升级,更好用.当我们需要远程操作一台 linux 服务器的时候,只能使用命令行 ...

  6. Linux下源码编译安装rpy2

    R(又称R语言)是一款开源的跨平台的数值统计和数值图形化展现工具.rpy2是Python直接调用R的第三方库,它可以实现使用python读取R的对象.调用R的方法以及Python与R数据结构转换等.这 ...

  7. 在Linux下源码编译安装GreatSQL/MySQL

    欢迎来到 GreatSQL社区分享的MySQL技术文章,如有疑问或想学习的内容,可以在下方评论区留言,看到后会进行解答 GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 本 ...

  8. 【流媒体开发】VLC Media Player - Android 平台源码编译 与 二次开发详解 (提供详细800M下载好的编译源码及eclipse可调试播放器源码下载)

    作者 : 韩曙亮  博客地址 : http://blog.csdn.net/shulianghan/article/details/42707293 转载请注明出处 : http://blog.csd ...

  9. centos下源码编译安装MySQL

    解压下载的软件压缩包  tar xzvf mysql-5.1.63.tar.gz 进入解压的目录  cd mysql-5.1.63/ 安装需要的依赖包  yum install gcc gcc-c++ ...

随机推荐

  1. 浏览器端-W3School-HTML:HTML DOM Audio 对象

    ylbtech-浏览器端-W3School-HTML:HTML DOM Audio 对象 1.返回顶部 1. HTML DOM Audio 对象 Audio 对象 Audio 对象是 HTML5 中的 ...

  2. React之父子组件之间传值

    1.新增知识点 /** React中的组件: 解决html 标签构建应用的不足. 使用组件的好处:把公共的功能单独抽离成一个文件作为一个组件,哪里里使用哪里引入. 父子组件:组件的相互调用中,我们把调 ...

  3. redis源码分析之数据结构--dictionary

    本文不讲hash算法,而主要是分析redis中的dict数据结构的特性--分步rehash. 首先看下数据结构:dict代表数据字典,每个数据字典有两个哈希表dictht,哈希表采用链式存储. typ ...

  4. MySQL 常见面试知识点

    之前简单总结了一下MySQL的场景面试知识点 1.讲下MVCC原理 2.MySQL高可用架构介绍 3.OSC(在线更改表结构)原理 4.MySQL性能调优有哪些关键点/经验 5.MySQL在线备份方案 ...

  5. VS2013配置curl

    http://blog.csdn.net/totodum/article/details/51059380 安装完成之后,要注意url的传值, curl中需要传char*

  6. ABAP的smartform赋值

    添加文本后, 在输出选项中指定行/列

  7. 容易忽略的javascript知识点的总结

    /** 对代码行进行折行 **/您可以在文本字符串中使用反斜杠对代码行进行换行.下面的例子会正确地显示:document.write("Hello \World!"); 不过,您不 ...

  8. vs2015中将复制过来的文件夹显示目录文件

    先将文件夹和文件复制到VS程序所在的位置,点击解决方案资源管理器上的“显示所有文件”按纽,展开这个文件夹,这样你就可以看到这个文件或者文件夹了,这时,这个文件或者文件夹是虚线构成的.你右击这个文件或者 ...

  9. Tomcat部署SSL证书过程中遇到的问题

    在CentOS7中Tomcat部署SSL证书时遇到的问题 1.配置servlet.xml 配置tomcat/conf/server.xml 加入以下代码 <Connector port=&quo ...

  10. 小记------mongodb数据库如何进行模糊查询

    // 模糊匹配createTime   是以 2019-07-23 开头 db.getCollection('driver_online_record').find({"createTime ...