部署 LAMP (CentOS 7.2)
摘自:https://help.aliyun.com/document_detail/50774.html
简介
LAMP指Linux+Apache+Mysql/MariaDB+Perl/PHP/Python是一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。
部署方式
在阿里云服务器下部署LAMP提供三种部署方式,镜像部署、一键安装包部署和手动部署(源码编译安装/YUM安装),一般推荐镜像部署适合新手使用更加快捷方便,安装包部署以及手动部署适合对Linux命令有基本了解的用户,可以满足用户个性化部署的要求。本教程主要介绍手动部署的方式。
手动部署
系统平台:CentOS 7.2
Apache版本:2.4.23
Mysql 版本:5.7.17
Php版本:7.0.12
安装前准备
CentOS 7.2系统默认开启了防火墙,需关闭后外部才可访问本机的80、21等端口,如需做安全类配置可自行参考官方文档。
关闭防火墙:
systemctl stop firewalld.service
关闭防火墙开机自启动:
systemctl disable firewalld.service
安装vim及unzip:
yum install -y vim unzip
编译安装apache准备
编译安装apache前需要安装apr、apr-util和pcre软件包和相关依赖包。
yum install -y gcc gcc-c++ autoconf libtool
安装apr
cd /usr/local/src/wget http://oss.aliyuncs.com/aliyunecs/onekey/apache/apr-1.5.0.tar.gztar zxvf apr-1.5.0.tar.gzcd apr-1.5.0./configure --prefix=/usr/local/aprmake && make install
安装apr-util
cd /usr/local/src/wget http://oss.aliyuncs.com/aliyunecs/onekey/apache/apr-util-1.5.3.tar.gztar zxvf apr-util-1.5.3.tar.gzcd apr-util-1.5.3./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/aprmake && make install
安装pcre
cd /usr/local/src/wget http://zy-res.oss-cn-hangzhou.aliyuncs.com/pcre/pcre-8.38.tar.gztar zxvf pcre-8.38.tar.gzcd pcre-8.38./configure --prefix=/usr/local/pcremake && make install
编译安装Apache
cd /usr/local/src/wget http://zy-res.oss-cn-hangzhou.aliyuncs.com/apache/httpd-2.4.23.tar.gztar zxvf httpd-2.4.23.tar.gzcd httpd-2.4.23./configure \--prefix=/usr/local/apache --sysconfdir=/etc/httpd \--enable-so --enable-cgi --enable-rewrite \--with-zlib --with-pcre=/usr/local/pcre \--with-apr=/usr/local/apr \--with-apr-util=/usr/local/apr-util \--enable-mods-shared=most --enable-mpms-shared=all \--with-mpm=eventmake && make install
修改httpd.conf配置文件参数
cd /etc/httpd/vim httpd.conf
1.找到Directory参数,注释掉Require all denied添加Require all granted。

2.找到ServerName参数,添加ServerName localhost:80 然后,按Esc键后输入:wq保存退出。

设置PidFile路径
vim /etc/httpd/httpd.conf
在配置文件最后添加以下内容:
PidFile "/var/run/httpd.pid"
启动Apache服务并验证
cd /usr/local/apache/bin/./apachectl startnetstat -tnlp #查看服务是否开启

在本地浏览器中输入云服务器的公网IP地址验证,出现下图表示安装成功。

设置开机自启
在rc.local文件中添加/usr/local/apache/bin/apachectl start,然后输入:wq保存退出。
vim /etc/rc.d/rc.local

设置环境变量
vi /root/.bash_profile
在PATH=$PATH:$HOME/bin添加参数为:
PATH=$PATH:$HOME/bin:/usr/local/apache/bin
然后输入:wq保存退出,执行:
source /root/.bash_profile
编译安装MySQL前预准备
首先检查系统中是否存在使用rpm安装的mysql或者mariadb,如果有需要先删除后再编译安装。
rpm -qa | grep mysql #由下至上依次卸载rpm -qa | grep mariadbrpm -e xxx #一般使用此命令即可卸载成功rpm -e --nodeps xxx #卸载不成功时使用此命令强制卸载
卸载完以后用 rpm -qa|grep mariadb 或者 rpm -qa|grep mysql 查看结果。
安装mysql
yum install -y libaio-* #安装依赖mkdir -p /usr/local/mysqlcd /usr/local/srcwget http://zy-res.oss-cn-hangzhou.aliyuncs.com/mysql/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gztar -xzvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gzmv mysql-5.7.17-linux-glibc2.5-x86_64/* /usr/local/mysql/
建立mysql组和用户,并将mysql用户添加到mysql组
groupadd mysqluseradd -g mysql -s /sbin/nologin mysql
初始化mysql数据库
/usr/local/mysql/bin/mysqld --initialize-insecure --datadir=/usr/local/mysql/data/ --user=mysql
更改mysql安装目录的属主属组
chown -R mysql:mysql /usr/local/mysqlchown -R mysql:mysql /usr/local/mysql/data/chown -R mysql:mysql /usr/local/mysql
设置开机自启
cd /usr/local/mysql/support-files/cp mysql.server /etc/init.d/mysqldchmod +x /etc/init.d/mysqld # 添加执行权限vim /etc/rc.d/rc.local
添加/etc/init.d/mysqld start到rc.local文件中,然后输入:wq保存退出。
设置环境变量
vi /root/.bash_profile
在PATH=$PATH:$HOME/bin添加参数为:
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
然后输入:wq保存退出,输入:
source /root/.bash_profile
启动MySQL数据库
/etc/init.d/mysqld start

修改Mysql的root用户密码
初始化后mysql为空密码可直接登录,为了保证安全性需要修改mysql的root用户密码。
mysqladmin -u root password 'xxxx'
测试登录MySQL数据库
mysql -uroot -p密码 #-p和密码之间无空格

编译安装php
依赖安装:
yum install php-mcrypt libmcrypt libmcrypt-devel libxml2-devel openssl-devel libcurl-devel libjpeg.x86_64 libpng.x86_64 freetype.x86_64 libjpeg-devel.x86_64 libpng-devel.x86_64 freetype-devel.x86_64 libjpeg-turbo-devel libmcrypt-devel mysql-devel -ywget http://zy-res.oss-cn-hangzhou.aliyuncs.com/php/php-7.0.12.tar.gztar zxvf php-7.0.12.tar.gzcd php-7.0.12./configure \--prefix=/usr/local/php \--with-mysql=mysqlnd --with-openssl \--with-mysqli=mysqlnd \--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 \--enable-maintainer-zts \--disable-fileinfomake && make install
复制配置文件
cd php-7.0.12cp php.ini-production /etc/php.ini
编辑apache配置文件httpd.conf,以apache支持php
vim /etc/httpd/httpd.conf
在配置文件最后添加如下二行:
AddType application/x-httpd-php .phpAddType application/x-httpd-php-source .phps
定位到 DirectoryIndex index.html
修改为:
DirectoryIndex index.php index.html
重启apache服务
/usr/local/apache/bin/apachectl restart
测试是否能够正常解析PHP
cd /usr/local/apache/htdocs/vim index.php #添加如下内容<?phpphpinfo();?>
访问云服务器的公网IP/index.php,出现如下页面表示解析成功。

安装phpmyadmin
mkdir -p /usr/local/apache/htdocs/phpmyadmincd /usr/local/src/wget http://oss.aliyuncs.com/aliyunecs/onekey/phpMyAdmin-4.1.8-all-languages.zipunzip phpMyAdmin-4.1.8-all-languages.zipmv phpMyAdmin-4.1.8-all-languages/* /usr/local/apache/htdocs/phpmyadmin
访问ip/phpmyadmin即可访问到phpmyadmin登录页面,输入mysql的用户名以及密码即可登录。
部署 LAMP (CentOS 7.2)的更多相关文章
- 云服务器 ECS > 建站教程 > 部署 LAMP (CentOS 7.2 ,Apache版本:2.4.23, Mysql 版本:5.7.17 , Php版本:7.0.12)
云服务器 ECS > 建站教程 > 部署 LAMP (CentOS 7.2) 部署 LAMP (CentOS 7.2) 文档提供方:上海驻云信息科技有限公司 更新时间:2017-06 ...
- 部署 LAMP (CentOS 7.2),摘自阿里云,方便查看使用
原文地址:https://help.aliyun.com/document_detail/50774.html?spm=5176.product25365.6.728.C9s3V8 简介 LAMP指L ...
- 阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7)
阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7) 1.效果图 1 2. 部署步骤 1 1. mysql安装附加(centos7) 7 ...
- Centos 7使用docker部署LAMP搭建wordpress博客系统
0.简要概述 LAMP是目前比较流行的web框架,即Linux+Apache+Mysql+PHP的网站架构方案.docker是目前非常流行的虚拟化应用容器,可以为任何应用创建一个轻量级.可移植的容器. ...
- 部署lamp服务器
系统:CentOS 6.5 64位 1.卸载旧版本软件 rpm -qa | grep mysql #查询是否已经安装MySQL,如有执行下面的操作将其全部删除 rpm -e mysql --nodep ...
- 部署LAMP+NFS实现双Web服务器负载均衡
一.需求分析 1.前端需支持更大的访问量,单台Web服务器已无法满足需求了,则需扩容Web服务器: 2.虽然动态内容可交由后端的PHP服务器执行,但静态页面还需要Web服务器自己解析,那是否意味着多台 ...
- CentOS6系统编译部署LAMP(Linux, Apache, MySQL, PHP)环境
我们一般常规的在Linux服务器中配置WEB系统会用到哪种WEB引擎呢?Apache还是比较常用的引擎之一.所以,我们在服务器中配置LAMP(Linux, Apache, MySQL, PHP)是我们 ...
- 部署 LAMP
部署 LAMP https://help.aliyun.com/document_detail/50774.html?spm=a2c4g.11186623.6.773.Em8xVc 文档提供方:上海驻 ...
- Linux学习笔记之阿里云ECS部署LAMP环境
LAMP指Linux+Apache+MySQL/MariaDB+Perl/PHP/Python,是一组常用来搭建动态网站或者服务器的开源软件.它们本身都是各自独立的程序,但是因为常被放在一起使用,拥有 ...
随机推荐
- 2019-8-26-当-ASP.NET-Core-链接找不到时可能的原因
title author date CreateTime categories 当 ASP.NET Core 链接找不到时可能的原因 lindexi 2019-08-26 18:52:28 +0800 ...
- 浏览器标准模式与怪异模式-CSS1Compat and BackCompat
由于历史的原因,各个浏览器在对页面的渲染上存在差异,甚至同一浏览器在不同版本中,对页面的渲染也不同.在W3C标准出台以前,浏览器在对页面的渲染上没有统一规范,产生了差异(Quirks mode或者称为 ...
- 深入浅出 Java Concurrency (22): 并发容器 part 7 可阻塞的BlockingQueue (2)[转]
在上一节中详细分析了LinkedBlockingQueue 的实现原理.实现一个可扩展的队列通常有两种方式:一种方式就像LinkedBlockingQueue一样使用链表,也就是每一个元素带有下一个元 ...
- Android中Activity和AppcompatActivity的区别(详细解析)
转载 https://blog.csdn.net/today_work/article/details/79300181 继承AppCompatActivity的界面. 如下图所示: copy界面代码 ...
- 简单的选项卡制作(原生JS)
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- 洛谷P4022 熟悉的文章
题意:给定一个串集合s,每次给定一个串t,询问一个最大的L,使得存在一种划分能把t划分成若干个子串, 其中好的子串总长不小于0.9|t|.好的子串定义为长度不小于L且是s中某一个串的子串. 解:发现这 ...
- 通过游戏学python 3.6 第一季 第八章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账号--锁定次数
通过游戏学python 3.6 第一季 第八章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账 ...
- H5C3--属性选择器、兄弟选择器、伪类选择器
属性选择器 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- [转]Event loop——浏览器和Node区别
最近对Event loop比较感兴趣,所以了解了一下.但是发现整个Event loop尽管有很多篇文章,但是没有一篇可以看完就对它所有内容都了解的文章.大部分的文章都只阐述了浏览器或者Node二者之一 ...
- Hibernate中的Query
//1:创建query对象,方法里面写hql语句 Query query = session.createQuery("from User"); //2:利用query对象中的方法 ...