Laravel 之道特别篇一: yum 安装 LNMP 环境
导语
虽然,当今在 CentOS(版本为7) 中搭建 LNMP 环境,我们可以使用 宝塔 或者 LNMP一键安装包;但是,我们作为一名程序员,尤其是后台程序员,如果,仅仅借助这第三方安装搭建 LNMP,会阻碍我们的成长和进步。尤其对我们这种不摸透原理,誓不罢休的强迫症患者来说,更为严重。
上面这段话,说着玩哈,有方便的工具为什么不用呢,你说是不。当然多学点其它方式,对我们还是有好处的。今天我就把 yum 安装 nginx1.14、php7.2、mysql5.7 教给大家,同时给自己记录一下笔记,方便以后查找。
一、安装前准备
-
安装 VMware 虚拟机(我们在 WIN10 上通过虚拟机安装 CentOS7)
这款软件并不是开源的,我建议有能力的小伙伴,能支持一下正版,就支持一下哈。实在不行滴,,,百度找 vmware14 激活码。这里我就不贴啦,有问题找度娘,什么问题都能解决。
- 下载 CentOS7
自己选择一个离自己最近的下载地址,建议选用 163 的下载地址
二、关于安装 CentOS系统
太长了,不在这哔哔啦。直接上我学习 Linux 基础的笔记分享地址,主要看系统安装这块,其它的,有兴趣的同学,可以看看。
安装好以后,在虚拟机上启动,使用 Xshell 工具连接已经安装好的 CentOS:
选择 Xshell 的 download 按钮,然后填写社区或者学校信息,最后 submit 后,就可以下载了
- 注意安装完 CentOS 后
一定要设置 DNS 解析,否则无法使用 yum 工具
腾讯DNS:119.29.29.29
114DNS:114.114.114.114
三、安装 Nginx1.14
- 第一步,获取 yum 源
看到没,复制图片大红框的内容
- 第二步,在 CentOS 中新建 yum 源
1、进入 yum 源管理目录
cd /etc/yum.repos.d/
2、新建并编辑 nginx yum 源文件 nginx.repo
vim nginx.repo
3、将复制好的 nginx yum 源内容,粘贴到 nginx.repo
中
4、修改 baseurl
baseurl=http://nginx.org/packages/OS/OSRELEASE/$basearch/
# 改为
baseurl=http://nginx.org/packages/centos/7/$basearch/
如图
5、保存退出: esc
-> :wq
-> enter
6、测试 yum 源安装是否成功
yum list | grep nginx
第一次运行 yum list 可能需要寻找可用的 yum 源地址,并做缓存。此过程如果失败,重新运行一下上面的命令,因为网络环境并不是一成不变的。
如上图,多运行几次
yum list | grep nginx
,最后能够稳定显示上面的内容,即为 nginx yum 源安装成功
- 第三步,安装 nginx
yum -y install nginx
- 第四步,测试 nginx 是否安装成功
nginx -v
- 第五步,需要关闭防火墙和 selinux(因为这是测试环境,不需要域名,生产环境,不要关闭这两项)
iptables -F
setenforce 0
注意:每次系统重启,都要关闭一下,要不访问不了 80 端口哦
- 第六步,CentOS 根目录新建
www/wwwroot
目录用来存放网站项目目录
mkdir /www
mkdir /www/wwwroot
- 第七步,在
/www/wwwroot
新建测试目录default
,并在测试目录下新建一个index.html
测试文件
mkdir /www/wwwroot/default
cd /www/wwwroot/default
vim index.html
然后在
index.html
输入Hellow World!!!
内容,用来做测试
- 第八步,进入
/etc/nginx/conf.d
,并修改里面的default.conf
cd /etc/nginx/conf.d
vim default.conf
将上图中红框内容修改为 /www/wwwroot/default;
- 第九步,启动 nginx,并查看启动状态
systemctl start nginx
systemctl status nginx
如图 绿点并提示有 active (running) 即为启动成功。
- 第十步,浏览器访问 虚拟机的IP地址
四、安装 PHP7.2
php7.2 版本的 yum 源在 webtatic
上,但还有一部分需要依赖 epel-release
。
- 第一步,安装
epel-release
EPEL(Extra Packages for Enterprise Linux ),是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS和Scientific Linux。
yum -y install epel-release
安装完成后,在 /etc/yum.repos.d
目录下,就会多一个 epel.repo
的文件,还有一个 testing
的测试文件。当系统通过 yum
进行安装软件时,如果需要 epel
里的扩展包,就会自动下载安装。
- 第二步,安装
webtatic
yum 源
rpm -ivh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
安装完成后,在 /etc/yum.repos.d
目录下会多出 webtatic.repo
和 webtatic-archive.repo
两个文件,还有一个 testing
的测试文件。
- 第三步,查看 php 可以安装的包
yum list | grep php72
上面这些 rpm 包就是 webtatic 的 yum 源里面的包啦
我们要安装的就是
php72
的核心包mod_php72w
和核心扩展包php72w-cli
、php72w-fpm
、php72w-common
、php72w-devel
其它扩展选项包请根据需要安装,例如需要
php72w-gd
后期可单独安装
- 第四步,安装 php72
yum -y install mod_php72w php72w-cli php72w-fpm php72w-common php72w-devel
通过这种方式安装的 php72 的 php.ini 文件与我们认识的不太一样,它类似于 nginx.conf
存在一个主配置,通过类型 include
方法,包含指定文件夹下的模块配置文件。
如图,是 /etc
文件夹:
- 第五步,在
/www/wwwroot
下新建learn
文件夹,并在此文件夹下,新建index.php
文件,输入下列内容
<?php
phpinfo();
- 第六步,在
/etc/nginx/conf.d
下面新建learn.conf
nginx配置文件,输入下列内容
server {
listen 8080;
server_name localhost;
root /www/wwwroot/learn;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options "nosniff";
index index.php index.html index.htm;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
error_page 404 /index.php;
location ~ \.php$ {
root /www/wwwroot/learn;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.(?!well-known).* {
deny all;
}
}
- 第七步,重启 nginx 与启动 php-fpm
systemctl restart nginx
systemctl start php-fpm
- 第八步,浏览器访问 IP:8080
五、安装 MySQL5.7
- 第一步,安装 mysql 官方 yum 源
rpm -ivh https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
- 第二步,查看 MySQL yum 源
yum list | grep mysql
发现只有 mysql80 的包,这是因为没有开启 mysql57 的包
- 第三步,关闭80包,开启57包
yum-config-manager --disable mysql80-community
yum-config-manager --enable mysql57-community
这个时候再查看 mysql 包列表
yum list | grep mysql
57版本的包,就这样开启了
- 第四步,安装 mysql57
yum -y install mysql-community-server mysql-community-client
- 第五步,启动 mysql
systemctl start mysqld
- 第六步,查看密码
grep 'temporary password' /var/log/mysqld.log
- 第七步,登录 mysql,修改密码
mysql -uroot -p
# 输入密码
set password for root@localhost = password('你的密码');
如果提示错误,那是因为 mysql57 对密码的复杂度进行了限制,依次执行下列命令,取消复杂度限制,再修改
set global validate_password_policy=0;
set global validate_password_mixed_case_count=0;
set global validate_password_number_count=3;
set global validate_password_special_char_count=0;
set global validate_password_length=3;
最后
LNMP 已经安装完毕。
特别篇第二章,讲一下 PhpStrom 实现本地代码与远程代码同步功能,此功能极大提高开发效率,省下了,不断手动上传代码麻烦。
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: