Centos7+ 系统的(apache+)Nginx+PHP7.1+mysql5.7 环境的搭建,亲测

1. Nginx

yum install nginx

使用yum源安装:

sudo rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

查看yum源列表:

sudo yum repolist

出现:nginx repo 表示安装源成功。

 

配置 Nginx 服务

设置开机启动

$ sudo systemctl enable nginx

启动服务

$ sudo systemctl start nginx

停止服务

$ sudo systemctl restart nginx

重新加载,因为一般重新配置之后,不希望重启服务,这时可以使用重新加载。

$ sudo systemctl reload nginx

 

Nginx配置信息

网站文件存放默认目录

/usr/share/nginx/html

网站默认站点配置

/etc/nginx/conf.d/default.conf

自定义Nginx站点配置文件存放目录

/etc/nginx/conf.d/

Nginx全局配置

/etc/nginx/nginx.conf

Nginx启动

nginx -c nginx.conf

 

1.8 如果你的服务器没打开防火墙,你需要打开 HTTP(80) 和 HTTPS(443) 端口。

firewall-cmd --permanent --zone=public --add-service=http

firewall-cmd --permanent --zone=public --add-service=https

firewall-cmd --reload // 重新加载配置

 

(Apache的安装命令: yum -y install httpd。 网站根目录:/var/www/html  httpd的配置文件地址: /etc/httpd/cond/httpd.conf)

2. Mysql5.7

2.1 下载 MySQL 的 YUM 源

进入到要下载到的路径:cd /usr/local/src

下载:wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

 

2.2 安装 MySQL 的 YUM 源

 rpm -ivh mysql57-community-release-el7-11.noarch.rpm

 

2.3 检查 MySQL 的 YUM 源是否安装成功

 yum repolist enabled | grep "mysql.*-community.*"

 

2.4 查看 MySQL 版本

 yum repolist all | grep mysql

 

2.5 安装 MySQL

yum install mysql-community-server

一直输 y 就可以了。

 

2.6 启动 MySQL 服务

systemctl start mysqld

 

2.7 测试连接 MySQL 服务

mysql -u root 或者 mysql

 

--------------------------------------------------------------------------------

 

提示:

 

刚安装的 MySQL 是没有密码的,这时如果出现:

 

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO),解决如下:

 

① 停止 MySQL 服务:systemctl stop mysqld 

 

② 以不检查权限的方式启动 MySQL: mysqld --user=root --skip-grant-tables &

 

③ 再次输入 mysql -u root 或者 mysql,这次就可以进来了。

 

④ 更新密码:

 

MySQL 5.7 以下版本:UPDATE mysql.user SET Password=PASSWORD('123456') where USER='root';

 

MySQL 5.7 版本:UPDATE mysql.user SET authentication_string=PASSWORD('123456') where USER='root';

 

⑤ 刷新:flush privileges;

 

⑥ 退出:exit;

 

设置完之后,输入 mysql -u root -p,这时输入刚设置的密码,就可以登进数据库了。

 

--------------------------------------------------------------------------------

 

2.8 防火墙设置

远程访问 MySQL,需要开放 3306 端口:

 

firewall-cmd --permanent --zone=public --add-port=3306/tcp

 

firewall-cmd --permanent --zone=public --add-port=3306/udp

 

firewall-cmd --reload

 

如果是 CentOS 7,需要将 MySQL 服务加入防火墙,然后重启防火墙:

 

firewall-cmd --zone=public --permanent --add-service=mysql

 

systemctl restart firewalld

 

--------------------------------------------------------------------------------

 

提示:

 

在输入 firewall-cmd --permanent --zone=public --add-port=3306/tcp 时可能会报 'FirewallD is not running',是说防火墙本身就没有打开,解决方法:

 

① 查看防火墙状态:systemctl status firewalld,会发现状态是 dead,即防火墙未开启。

 

② 打开防火墙:systemctl start firewalld

 

③ 再次查看防火墙状态:systemctl status firewalld,这时会发现状态变为 running,即防火墙开启成功。

 

2.9 设置允许远程访问

默认情况下 MySQL 是不允许远程连接的,所以在 Java 项目或者 MySQLWorkbench 等数据库连接工具连接服务器上的 MySQL 服务的时候会报 "Host 'x.x.x.x' is not allowed to connect to this MySQL server"。可以通过下面的设置解决。详细可以参考之前写的一篇文章 XXX is not allowed to connect to this MySQL server。

 

① grant all privileges on *.* to root@"%" identified by '0';

 

② flush privileges;

 

--------------------------------------------------------------------------------

 

提示:

 

在执行第一条命令的时候,可能会报:

 

'ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.' 需要让我们重置密码。原因是因为我刚刚的命令中设置的数据库密码是0,这个密码过于简单,不符合 MySQL 的安全要求。只要重新设置一个复杂点的密码就可以了:

 

mysql> SET PASSWORD = PASSWORD('xxx');   //xxx 是重置的新的复杂的密码

 

--------------------------------------------------------------------------------

 

思考:

之前设置简单密码是没有问题的,可能原因:

① 可能目前环境是 CentOS 7 + MySQL 5.7.21,安全性有所提升。

② 也有可能是之前的数据库设置过

mysql> set global validate_password_policy=0;

mysql> set global validate_password_length=1;

允许设置简单密码。

 

3.0 相关命令

MySQL 相关:

systemctl start mysqld    #启动mysql

systemctl stop mysqld    #停止mysqld

systemctl restart mysqld    #重启mysqld

systemctl enable mysqld    #设置开机启动

systemctl status mysqld    #查看 MySQL Server 状态

防火墙相关:

systemctl status firewalld    #查看防火墙状态

systemctl start firewalld    #打开防火墙

systemctl stop firewalld    #关闭防火墙

systemctl restart firewalld    #重启防火墙

 

3. php7.1

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

//查看

yum search php71w

//安装php以及扩展

yum install php71w php71w-fpm php71w-cli php71w-common php71w-devel php71w-gd php71w-pdo php71w-mysql php71w-mbstring php71w-bcmath

//开启服务

service php-fpm start

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值