部署 LAMP
部署 LAMP
https://help.aliyun.com/document_detail/50774.html?spm=a2c4g.11186623.6.773.Em8xVc
文档提供方:上海驻云信息科技有限公司 更新时间:2017-11-03 16:59:36
简介
LAMP 指 Linux+Apache+MySQL/MariaDB+Perl/PHP/Python,是一组常用来搭建动态网站或者服务器的开源软件。它们本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的 Web 应用程序平台。
部署方式
您可以使用三种方式在云服务器 ECS 上部署 LAMP:
- 镜像部署:方便快捷,适合不太了解 Linux 命令的用户。
- 一键安装包部署:适合对 Linux 命令有基本了解的用户。
- 手动部署:可以满足用户个性化部署需求,适合对 Linux 命令有基本了解的用户。
本文介绍如何在云服务器 ECS 上手动部署 LAMP。
软件版本说明
本文操作的镜像和软件版本说明如下 :
- 操作系统:CentOS 7.2 64 位
- Apache:2.4.23
- MySQL:5.7.17
- PHP:7.0.12
前提条件
在部署之前,需要确认:
实例所在安全组已经 放行了服务所需的端口:
服务 SSH HTTP MySQL 端口 TCP 22 TCP 80 TCP 3306
准备工作
设置防火墙
CentOS 7.2 系统默认开启防火墙 firewalld。您可以关闭 firewalld 放行 80、22 等端口。
说明:您也可以参考 firewalld 官方文档 在防火墙里放行这些端口。
运行命令关闭防火墙。
systemctl stop firewalld.service
运行命令关闭防火墙开机自启动。
systemctl disable firewalld.service
安装 vim 和 unzip
下载软件用于编辑和解压缩文件。运行命令:
yum install -y vim unzip
操作步骤
按以下描述部署 LAMP。
编译安装 Apache
运行命令安装相关依赖包。
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/切换到 /etc/httpd/ 目录。 - 运行
vim httpd.conf打开 httpd.conf 文件,按i键进入编辑模式。 - 找到 Directory 参数,注释掉
Require all denied,并添加Require all granted。
- 找到 ServerName 参数,添加
ServerName localhost:80。
- 设置 PidFile 路径:在文件最后添加
PidFile "/var/run/httpd.pid"。 - 按
Esc键退出编辑模式,输入:wq保存并关闭 httpd.conf 文件。
- 运行
依次执行以下命令启动 Apache 服务并验证。
cd /usr/local/apache/bin/./apachectl startnetstat -tnlp #查看服务是否开启
如果返回以下结果,说明 Apache 服务已经成功启动。

在本地机器的浏览器中输入 ECS 实例公网 IP 地址,如果出现如图所示信息,说明 Apache 服务安装成功。
设置开机自启动。
- 运行
vim /etc/rc.d/rc.local打开 rc.local 文件,按i进入编辑模式。 - 添加
/usr/local/apache/bin/apachectl start。
- 按
Esc键退出编辑模式,输入:wq保存并关闭 rc.local 文件。
- 运行
设置环境变量。
- 运行
vi /root/.bash_profile打开文件,按i进入编辑模式。 - 将
PATH=$PATH:$HOME/bin修改为PATH=$PATH:$HOME/bin:/usr/local/apache/bin。 - 按
Esc键退出编辑模式,输入:wq保存并关闭文件。 - 运行
source /root/.bash_profile重新执行文件。
- 运行
编译安装 MySQL
依次执行以下命令检查系统中是否存在使用 rpm 安装的 MySQL 或者 MariaDB。
rpm -qa | grep mysqlrpm -qa | grep mariadb
如果已经安装,则运行以下任一个命令删除。
rpm -e 软件名 #注意:这里的软件名必须包含软件的版本信息,如rpm -e mariadb-libs-5.5.52-1.el7.x86_64。一般使用此命令即可卸载成功。rpm -e --nodeps 软件名 #卸载不成功时使用此命令强制卸载
卸载后,再用
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/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
在 rc.local 文件中添加
/etc/init.d/mysqld start。设置环境变量。
运行
vi /root/.bash_profile打开文件,按i进入编辑模式。将
PATH=$PATH:$HOME/bin:/usr/local/apache/bin修改为PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib。说明:此处是在编译安装 Apache的环境变量的基础上再进行修改。
按
Esc键退出编辑模式,输入:wq保存并关闭文件。运行
source /root/.bash_profile重新执行文件。
启动 MySQL 数据库。
/etc/init.d/mysqld start
出现如下截图所示信息,表示 MySQL 启动成功。

修改 MySQL 的 root 用户密码:初始化后 MySQL 为空密码可直接登录,为了保证安全性需要修改 MySQL 的 root 用户密码。
mysqladmin -u root password 密码
测试登录 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 \--enable-mysqlnd \--with-mysqli=mysqlnd --with-openssl \--with-pdo-mysql=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打开文件,按i进入编辑模式。 - 在配置文件最后添加如下二行代码。
AddType application/x-httpd-php .phpAddType application/x-httpd-php-source .phps
定位到
DirectoryIndex index.html,修改为DirectoryIndex index.php index.html。说明:
如果文件中没有DirectoryIndex index.html,则添加上述代码。- 按
Esc键退出编辑模式,输入:wq保存并关闭文件。
- 运行
重启 Apache 服务:
/usr/local/apache/bin/apachectl restart
测试是否能够正常解析 PHP。
- 依次运行以下命令,找开 index.php 文件。
cd /usr/local/apache/htdocs/vim index.php
- 按
i键进入编辑模式,并添加以下内容。<?phpphpinfo();?>
- 按
Esc键退出编辑模式,并输入:wq保存并关闭文件。 在本地机器的浏览器里输入
http://实例公网 IP/index.php。
如果出现以下页面表示 PHP 解析成功。
- 依次运行以下命令,找开 index.php 文件。
安装 phpMyAdmin
依次运行以下命令安装 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
在本地机器浏览器输入http://实例公网 IP/phpmyadmin 访问 phpMyAdmin 登录页面。如果出现以下页面,说明 phpMyAdmin 安装成功。输入 MySQL 的用户名和密码即可登录。
部署 LAMP的更多相关文章
- 部署lamp服务器
系统:CentOS 6.5 64位 1.卸载旧版本软件 rpm -qa | grep mysql #查询是否已经安装MySQL,如有执行下面的操作将其全部删除 rpm -e mysql --nodep ...
- mint上部署lamp环境
不得不说现在在linux mint上部署lamp很方便,比windows服务器上的asp.net的部署升级都简单. 1 安装MySql sudo apt-get install mysql-serve ...
- 部署LAMP+NFS实现双Web服务器负载均衡
一.需求分析 1.前端需支持更大的访问量,单台Web服务器已无法满足需求了,则需扩容Web服务器: 2.虽然动态内容可交由后端的PHP服务器执行,但静态页面还需要Web服务器自己解析,那是否意味着多台 ...
- 云服务器 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 ...
- CentOS6系统编译部署LAMP(Linux, Apache, MySQL, PHP)环境
我们一般常规的在Linux服务器中配置WEB系统会用到哪种WEB引擎呢?Apache还是比较常用的引擎之一.所以,我们在服务器中配置LAMP(Linux, Apache, MySQL, PHP)是我们 ...
- rhel6+apache2.4+mysql5.7+php5.6部署LAMP架构
rhel6+apache2.4+mysql5.7+php5.6部署LAMP架构 2017年10月01日 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~准备阶段~~~~~~~~~~~~~ ...
- Linux学习笔记之阿里云ECS部署LAMP环境
LAMP指Linux+Apache+MySQL/MariaDB+Perl/PHP/Python,是一组常用来搭建动态网站或者服务器的开源软件.它们本身都是各自独立的程序,但是因为常被放在一起使用,拥有 ...
- 部署 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 ...
随机推荐
- bzoj千题计划172:bzoj1192: [HNOI2006]鬼谷子的钱袋
http://www.lydsy.com/JudgeOnline/problem.php?id=1192 1,2,4,8,…… n-2^k 可以表示n以内的任意数 若n-2^k 和 之前的数相等,一个 ...
- 贪心问题:区间覆盖 NYOJ 喷水装置(二)
喷水装置(二) 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 有一块草坪,横向长w,纵向长为h,在它的橫向中心线上不同位置处装有n(n<=10000)个点状的喷水 ...
- [转载]AMD 的 CommonJS wrapping
https://www.imququ.com/post/amd-simplified-commonjs-wrapping.html 它是什么? 为了复用已有的 CommonJS 模块,AMD 规定了 ...
- 【Foreign】Rectangle [KD-tree]
Rectangle Time Limit: 50 Sec Memory Limit: 512 MB Description Input Output Sample Input 0 4 2 0 2 1 ...
- 在嵌入式Linux系统(OK6410)中移植Boa 服务器
OK6410的Boa服务器移植: <一> Boa的编译 1. 从 www.boa.org 下载 Boa 服务器的最新版:boa-0.94.13.tar.gz. 2. 解压:tar xzf ...
- 深度优先搜索(DFS)----------------Tju_Oj_3517The longest athletic track
这个题主要考察对树的操作,主要思想是DFS或者BFS,其次是找树的直径方法(既要运用两次BFS/DFS),最后作为小白,还练习了vector的操作. DFS框架伪码: bool DSF(Node on ...
- Ubuntu 增加全新硬盘 分区及开机自动挂载
安装新的硬盘后.可以安装Gparted, 或者从live cd启动,然后用Gparted工具对硬盘进行分区.然后进入系统,启动Disks, 找到对应硬盘, 选择Edit Mount Options, ...
- A - ACM Computer Factory(网络流)
题目链接:https://cn.vjudge.net/contest/68128#problem/A 反思:注意拆点,否则的话节点就没用了,还有注意源点和汇点的赋值. AC代码: #include&l ...
- 【Tomcat】Tomcat容器 web.xml详解
Tomcat的安装目录下的conf目录下的web.xml文件有许多配置,例如: <init-param> <param-name>debug</param-name& ...
- 如何基于Spring Boot搭建一个完整的项目
前言 使用Spring Boot做后台项目开发也快半年了,由于之前有过基于Spring开发的项目经验,相比之下觉得Spring Boot就是天堂,开箱即用来形容是绝不为过的.在没有接触Spring B ...