Centos7 下安装Apache2 + MySQL + PHP7
Apache
1.安装Apache
yum install httpd
2.设置服务器开机自动启动Apache
systemctl enable httpd.service
若要验证是否自动启动可在重启服务器后在终端键入以下命令来检测Apache是否已经启动
systemctl is-enabled httpd.service
如果看到了enable这样的响应,则表示Apache已经启动成功
3.手动启动Apache
systemctl start httpd.service 在浏览器中输入IP地址即可验证是否启动成功
4.手动重启Apache
systemctl restart httpd.service
5.手动停止Apache
systemctl stop httpd.service
6.安装目录介绍
- Apache默认将网站的根目录指向/var/www/html
- 默认的主配置文件/etc/httpd/conf/httpd.conf
- 配置存储在的/etc/httpd/conf.d/目录
7.开放80端口
开启端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
命令含义:
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
重启防火墙
firewall-cmd --reload
查看状态
firewall-cmd --state
PS:centos7 下打开端口及端口查询
Centos 7 采用firewall 防火墙:
<1>例如 查询9200端口是否打开
命令如下: firewall-cmd --query-port=9200/tcp
返回yes 表示打开
<2>打开9300端口
命令如下:firewall-cmd --add-port=9300/tcp
返回success表示打开成功
在 Apache 启动的情况下,你可以在浏览器里访问服务器的公网 IP 地址以验证一切如计划那样顺利地进行
http://<服务器的公网 IP 地址>/
你将会看到一个出于通知和测试目的而存在的默认 CentOS 7 Apache 网页。它应该长这样子:
如果你看到了这个页面,那么你的 web 服务器现在已经正确地安装了。
MySQL
首先检查 MySQL 是否已安装
yum list installed | grep mysql
如果有的话 就全部卸载
yum -y remove +数据库名称




MySQL 依赖 libaio,所以先要安装 libaio
yum search libaio # 检索相关信息
yum install libaio # 安装依赖包

下载 MySQL Yum Repository
地址为 http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
PS:如果提示-bash: wget: 未找到命令,请先执行 yum install wget 安装 wget
添加 MySQL Yum Repository
添加 MySQL Yum Repository 到你的系统 repository 列表中,执行
yum localinstall mysql-community-release-el7-5.noarch.rpm

验证下是否添加成功
yum repolist enabled | grep "mysql.*-community.*"
选择要启用 MySQL 版本
查看 MySQL 版本,执行
yum repolist all | grep mysql
可以看到 5.5, 5.7 版本是默认禁用的,因为现在最新的稳定版是 5.6
yum repolist enabled | grep mysql
查看当前的启动的 MySQL 版本
通过 Yum 来安装 MySQL
执行
yum install mysql-community-server
Yum 会自动处理 MySQL 与其他组件的依赖关系:



遇到上述提示,输入 y 继续,执行完成会提示“完毕!”。此时MySQL 安装完成,
它包含了 mysql-community-server、mysql-community-client、mysql-community-common、mysql-community-libs 四个包。
执行
rpm -qi mysql-community-server.x86_64 0:5.6.24-3.el7
执行
whereis mysql
可以看到 MySQL 的安装目录是 /usr/bin/

启动和关闭 MySQL Server
启动 MySQL Server
systemctl start mysqld
查看 MySQL Server 状态
systemctl status mysqld
关闭 MySQL Server
systemctl stop mysqld
测试是否安装成功
mysql
可以进入 mysql 命令行界面

防火墙设置
远程访问 MySQL, 需开放默认端口号 3306.
执行
firewall-cmd --permanent --zone=public --add-port=3306/tcp
firewall-cmd --permanent --zone=public --add-port=3306/udp
这样就开放了相应的端口。
执行
firewall-cmd --reload
MySQL 安全设置
服务器启动后,可以执行
mysql_secure_installation;


此时输入 root 原始密码(初始化安装的话为空 直接回车即可),接下来,为了安全,MySQL 会提示你重置 root 密码,移除其他用户账号,禁用 root 远程登录,移除 test 数据库,重新加载 privilege 表格等,你只需输入 y 继续执行即可。
至此,整个 MySQL 安装完成。
下面可以看到都只能本机访问mysql,如果要外部可以访问mysql,那么host这里应该是显示%,所以这里我们可以选择重新创建一个用户并授予最高的权限,语句如下:
grant all privileges on *.* to 'root'@'%' identified by 'lam7' with grant option;
//这句话就是给root账户设置密码为lam7且host为%,即外部任何主机均可访问。*.*这个本意是数据库名.表名,我们这里没有写任何表名也没有写数据库名,就是意思所有的数据库都可以用这个root账户访问
flush privileges;//让刚刚修改的权限生效
然后接下来就是重启mysql服务,再次进入到mysql,用查询语句查看user表,如下所示:

如果需要使用外部工具链接mysql
则需要关闭防火墙
systemctl stop firewalld
然后查看状态
systemctl status firewalld

PHP
1.安装epel-release
yum -y install epel-release
2.安装PHP7
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
成功获取PHP7的yum源,然后再执行:
yum install php70w
3.验证安装
终端命令:PHP -v,显示当前PHP版本。
[root@moliangjun /]# php -v
PS:如果之前已经安装过其他版本的php,想要删除的话,用下面的方法删除再安装php7
查看php版本命令:
#php -v
如果用#yum remove php这个命令删除php的安装包是删不干净的。使用这个命令以后再用
#php -v
还是会看到有版本信息。。。。。所以必须强制删除
先用这个命令
#rpm -qa|grep php
查看系统上所有的php的安装包
提示如下
#php-pdo-5.1.6-27.el5_5.3
#php-mysql-5.1.6-27.el5_5.3
#php-xml-5.1.6-27.el5_5.3
#php-cli-5.1.6-27.el5_5.3
#php-common-5.1.6-27.el5_5.3
#php-gd-5.1.6-27.el5_5.3
注意卸载要先卸载没有依赖的
pdo是mysql的依赖项;common是gd的依赖项;
例如:# rpm -e php-pdo-5.1.6-27.el5_5.3
error: Failed dependencies:
php-pdo is needed by (installed) php-mysql-5.1.6-27.el5_5.3.i386
所以正确的卸载顺序是:
# rpm -e php-mysql-5.1.6-27.el5_5.3
# rpm -e php-pdo-5.1.6-27.el5_5.3
# rpm -e php-xml-5.1.6-27.el5_5.3
# rpm -e php-cli-5.1.6-27.el5_5.3
# rpm -e php-gd-5.1.6-27.el5_5.3
# rpm -e php-common-5.1.6-27.el5_5.3
再用# php -v
查看版本信息已经没有提示
Centos7 下安装Apache2 + MySQL + PHP7的更多相关文章
- CentOS6.5下安装Apache2.4+PHP7
CentOS6.5下安装Apache2.4+PHP7 http://blog.csdn.net/along602/article/details/42695779 http://www.th7.cn/ ...
- Windows10 下安装 Apache2.4+PHP7.1+MySQL5.7
这个教程主要是分享如何快速组建WAMP开发环境,对于软件的详细配置,自行参考文档或搜索. Visual C++ Redistributable for Visual Studio 2015 下载地址: ...
- centos7 下安装Apache2+MariaDB+PHP5过程详解
1.启用Apache2 Centos7默认已经安装httpd服务,只是没有启动.如果你需要全新安装,可以 yum install -y httpd 启动服务:systemctl start httpd ...
- centos7 下安装apache mysql php phpmyadmin。
1 安装mysql yum -y install mariadb-server systemctl start mariadb.service systemctl enable mariadb.ser ...
- Centos7下安装apache2.4 php5.6 pdo_oci oci8
一.下载必须的安装源码包 http://httpd.apache.org/download.cgi#apache24 httpd-2.4.23.tar.gz http://apr.apache.org ...
- linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦
linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(一) 一.Linux下安装MySQL 1.下载 下载地址:http://dev.mysql.co ...
- CentOS7下安装MySQL并配置远程连接
一.CentOS7下安装MySQL数据库 CentOS7默认的安装包里面已经没有 MySQL-Server安装包了,远程镜像中也没有了. 默认的是MariaDB (MySQL的一个分支,开发这个分支的 ...
- centos7 下安装rpm的mysql 5.7
在centos7下安装mysql5.7 一:下载mysql 去官网上去下载:这里我下载的二进制格式的 https://dev.mysql.com/downloads/mysql/ 去下载对应平台的my ...
- linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三)
linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(三) 安装PHP 1.yum方式安装PHP方法同安装apache一样传送门:linux cent ...
随机推荐
- 问题 I: 闪闪发光
[提交] [状态] [命题人:外部导入] 题目描述 一所位于云南昆明的中医药本科院校--云南中医学院. 因为报考某专业的人数骤减,正面临着停招的危机. 其中有九名少女想到一条妙计——成为偶像, 只要她 ...
- lightgbm调参方法
gridsearchcv: https://www.cnblogs.com/bjwu/p/9307344.html gridsearchcv+lightgbm cv函数调参: https://www. ...
- servlet的url-pattern规则
https://www.cnblogs.com/canger/p/6084846.html
- Openerp 修改 tree view 的列宽
在 tree 的后边添加自定义css 列:“my_class" 然后在对应的css文件中,添加样式: 保存,重新刷新页面即可.
- (转)多种方法实现Loading(加载)动画效果
当我们ajax提交一个按钮的时候,给那个按钮来个Loading效果会高端很多,体验也会上升个层次. 既能让用户知道正在提交中,也能防止二次提交,好处多多呢.
- TortoiseGit学习系列之TortoiseGit基本操作修改提交项目(图文详解)
前面博客 TortoiseGit学习系列之TortoiseGit基本操作克隆项目(图文详解) TortoiseGit基本操作修改提交项目 项目克隆完成后(可以将克隆 clone 理解为 下载,检出 c ...
- WPF中Label使用StringFormat
1. 在WPF中Label的Content有时内容只需要改变个别数字,而不需要所以内容都修改,这时候就要使用StringFormat, 如: <Label Content="I hav ...
- file_get_contents 抓取网页乱码。
iconv string iconv ( string $in_charset , string $out_charset , string $str ) mb_convert_encoding st ...
- Android studio--几个生成文件的区别:Make Project、Make Module、Build apk、Signed apk
参考资料: https://stackoverflow.com/questions/35334319/difference-between-make-project-make-module-app-b ...
- IOS折线图
做项目要统计商品的销售情况,美工那边给了效果图,自己就按照效果图自定义了一个ScrollView.整体效果不错,在做的过程中遇到的问题也记录一下. 现在这个还有许多优化的地方: 1.一个表中只能画一个 ...