CentOS 7下Apache + PHP + MySQL环境(LAMP)的安装
Step 1:更换阿里云 yum 源
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum update
Step 2:Apache 部分
安装Apache:yum -y install httpd
启动Apache服务:systemctl start httpd
检查Apache服务状态是否running:systemctl status httpd
设置Apache服务自启动守卫:systemctl enable httpd
此时,访问服务器的80端口,应可以看到Apache的默认页。如果不能访问,请检查防火墙设置。
Apache的默认网页资源目录是/var/www/html,默认配置文件位置是/etc/httpd/conf/httpd.conf。

Step 3:MySQL 5.7 部分
安装MySQL及服务器:由于需要下载文件,请在合适的目录下执行下列操作。若系统没有wget,请先yum install wget安装之。
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server
启动MySQL服务:systemctl start mysqld.service
检查MySQL服务是否running:systemctl status mysqld.service
设置MySQL服务自启动守卫:systemctl enable mysqld.service
获取MySQL初始随机密码: grep "password" /var/log/mysqld.log

使用该密码进入数据库:mysql -uroot -p,输入密码进入
执行查询,修改默认密码:ALTER USER 'root'@'localhost' IDENTIFIED BY '[NEWPASSWORD]';
注意,依据安全性政策,过于简单的密码无法通过要求。
新增最高权限用户:实际操作中,我们不可能将root用户暴露到%域来做数据库操作,所以添加一个新用户。执行下列查询:
CREATE USER '[USERNAME]'@'%' IDENTIFIED BY '[PASSWORD]';
GRANT ALL ON *.* TO '[USERNAME]'@'%';
FLUSH PRIVILEGES;
至此,使用配置好的用户名和密码,应可以使用Navicat连接上数据库。
Step 4: PHP 7 部分
注意,直接yum安装PHP会安装5.4版本。如果不慎安装,请执行
yum remove php
yum remove php-fpm
yum remove php-common
然后reboot服务器,再进行后续安装。
为安装PHP 7,需要配置一下新的源:
yum install epel-release
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
安装PHP:yum -y install php72w
安装PHP依赖:yum -y install php72w-fpm
安装常用的PHP插件:yum -y install php72w-cli php72w-common php72w-devel php72w-mbstring php72w-mysqlnd
重启服务器和数据库,使相关插件生效:
systemctl restart httpd.service
systemctl restart mysqld.service
验证PHP版本是否为7.0+:php -v
测试PHP能否正常解释:
cd /var/www/html
vi test.php
内容为 <?php phpinfo(); ?>
在浏览器访问之。若出现诊断页,则安装成功。
Step 5: 检查 MySQLi 支持
在test.php中搜索mysqli,若能看到类似表格,则MySQLi支持已启动。PHP 7.2版本默认启用MySQLi。

Step 6: 安全性配置
关闭Apache的目录索引权限:访问Apache的httpd.conf文件,去除<Directory /var/www/html>下Options的Indexes属性
在正式上线时,关闭PHP错误提示:编辑php.ini,修改display_errors选项到Off。
一些在Ubuntu下需要做的但在CentOS下好像不需要了的操作(仅供参考):
MySQL的默认配置文件路径为/etc/my.cnf,其中的具体配置项目请参看https://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
取消MySQL的地址绑定(否则会导致外网无法连接数据库):
[mysqld]下bind_address=0.0.0.0禁止MySQL进行域名解析(否则会导致外网连接数据库极慢无比):
[mysqld]下添加skip-name-resolve设置数据库默认编码UTF-8:
[mysqld]下添加character_set_server=utf8和init_connect='SET NAMES utf8'
Step 7: FTP 服务器
使用xShell联合xFtp即可直接连接。
Step 8: 启用HTTPS
安装SSL支持:yum install mod_ssl openssl
依据https://help.aliyun.com/knowledge_detail/95493.html的说明配置证书文件,注意:
- 第2步若找不到对应配置项,无视该步骤
- 第3步配置文件位置为
/etc/httpd/conf.d/ssl.conf - 第4步所给指令不再有效,请使用
systemctl restart httpd
现在,可以以域名方式https访问相应端口。
至此,LAMP环境搭建完成。后续PHP代码上传到/var/www/html目录下即可。
CentOS 7下Apache + PHP + MySQL环境(LAMP)的安装的更多相关文章
- Wndows下Apache+php+Mysql环境的搭建及其涉及的知识(转)
一.安装Apache 1. 在网上搜索以下3个文件,以及找一个地方新建一个文件夹 好吧,这里有下载链接:http://pan.baidu.com/s/1hr9IdSS 文件夹内有:apache,mys ...
- Wndows下Apache+php+Mysql环境的搭建及其涉及的知识
一.安装Apache 1. 在网上搜索以下3个文件,以及找一个地方新建一个文件夹 好吧,这里有下载链接:http://pan.baidu.com/s/1hr9IdSS 文件夹内有:apache,mys ...
- Centos 7 下yum搭建lnmp环境(yum安装方式)
我们都知道linux下安装软件主要有三种方式: 1.源码编译安装,即下载软件源代码,利用gcc g++ make 等编译工具进行编译安装: 此方式的优点:可以指定软件版本,可选择性好:编译时可以手动指 ...
- windows 7 64bit 下apache php mysql 环境配置
在64位环境下安装apache,php和配置过程 准备好安装包.(64位版本) Apache 下载地址:http://www.apachelounge.com/download/ Php 下载地址:h ...
- windows下apache+php+mysql 环境配置方法
一 准备 1 下载apache http://httpd.apache.org/download.cgi#apache24 httpd-2.2.22-win32-x86-openssl-0.9.8t. ...
- RedHat下apache\ftp\mysql 4.0 的安装方法
RedHat下安装这三个服务的方法大同小异 Apache服务: 找到Apache安装包: rpm -ivh httpd-2.0.40-21.i386.rpm 等待安装完成即可 检查安装结果: rpm ...
- Linux(Centos7)搭建LAMP(Apache+PHP+Mysql环境)
目录 Linux搭建LAMP(Apache+PHP+Mysql环境)Centos7 一. 检查系统环境 1.确认centos版本 2.检查是否安装过apache 3.检查是否安装过Mysql 4.清理 ...
- Apache+php+mysql环境配置
Apache+PHP+MySQL环境搭建 标题格式 正文格式 阶段性完成格式 正文中强调格式 ————————————————————————————— 前语:本文是从我写过的doc文档迁移过来的,由 ...
- windows下如何设置mysql环境变量
方法一: windows下如何设置mysql环境变量 关键词: mysql, Setting Environment Variables, 环境变量设置 我的电脑->属性->高级-> ...
随机推荐
- P1010 幂次方 P1022 计算器的改良
P1010 幂次方 一.题目 https://www.luogu.org/problemnew/show/P1010 二.代码 #include<bits/stdc++.h> using ...
- J - Association of Cats and Magical Lights Kattis - magicallights (树状数组+dfs序)
Rar the Cat((™)) is the founder of ACM (Association of Cats and Magical Lights). This is the story o ...
- ArcGIS自定义坐标变换中的方法说明
在10.1里面,一共提供了12种转换的方法,如下: Ø Geocentric_Translation Ø Molodensky Ø Molodensky_Abridged Ø Position ...
- postman接口测试使用
在做测试之前,先要了解一下http相关的一些知识,这样做起来才会更加顺手. http的请求分为header 和 body,一般在header里面放一些其他的信息,比如cookie,浏览器信息 body ...
- Spring-增强方式注解实现方式
SpringAOP增强是什么,不知道的到上一章去找,这里直接上注解实现的代码(不是纯注解,纯注解后续会有) 创建业务类代码 @Service("dosome")//与配置文件中&l ...
- Archives: 2018/11
There are 35 posts in total till now. 11月 11, 2018 HTTP 11月 11, 2018 TCP与UDP 11月 10, 2018 Python测试 1 ...
- 如何用Nginx解决跨域问题
一. 产生跨域的原因 1.浏览器限制 2.跨域 3.XHR(XMLHttpRequest)请求 二. 解决思路 解决跨域有多重,在这里主要讲用nginx解决跨域 1.JSONP 2.nginx代理 3 ...
- 用css3实现图片的放大缩小
记录一个公用的css实现图片的放大缩小 @keyframes scaleDraw { /*定义关键帧.scaleDrew是需要绑定到选择器的关键帧名称*/ 0%{ transform: scale(1 ...
- js 实现排序算法 -- 归并排序(Merge Sort)
原文: 十大经典排序算法(动图演示) 归并排序 归并排序是建立在归并操作上的一种有效的排序算法.该算法是采用分治法(Divide and Conquer)的一个非常典型的应用.将已有序的子序列合并,得 ...
- MariaDB 命令
1.账号登入 mysql -u root -p 上述命令,“root” 是登入账号,上述命令回车后,则进行密码的输入 登入成功后如下: 2.创建用户命令 create user 'new_user'@ ...