02.Nginx基础应用(一)

目录

  1. Nginx基本简述
  2. Nginx快速安装
  3. Nginx安装目录
  4. Nginx编译参数
  5. Nginx配置文件
  6. Nginx常用状态码

1. Nginx 基本简述

Nginx是一个开源且高性能可靠的 HttpWeb服务、代理服务

  • 开源: 直接获取源代码
  • 高性能: 支持海量并发
  • 可靠: 服务稳定
1. 常见的 HTTP Web服务
  1. HTTPD -> Apache基金会
  2. IIS -> 微软
  3. GWS -> Google
  4. openrestry
  5. tengline -> 淘宝基于Nginx开发
2. 为什么选择 Nginx
  1. Nginx非常轻量
  • 功能模块少 (源代码仅保留http与核心模块代码,其余不够核心代码会作为插件来安装)

  • 代码模块化(易读,便于二次开发,对于开发人员是非常友好)

  • 主流公司都选择Nginx

  1. 大公司都选择Nginx
  • 统一技术工具,降低维护成本,减少故障率。
  • Nginx涉足场景较多,技术更新成本低。
  1. Nginx采用Epool网络模型, Apache采用Select模型。
  • Select: 当用户发起一次请求,select模型就会进行一次遍历扫描,从而导致性能底下。
  • Epool: 当用户发起请求,epool模型会直接进行处理,效率高效,并无连接限制
3. Nginx 应用场景
  • 静态处理
  • 反向代理
  • 负载均衡
  • 资源缓存
  • 安全防护
  • 访问限制
  • 访问认证

2. Nginx 快速安装

1. 基础环境准备
//确认系统网络
[root@Nginx ~]# ping baidu.com

//关闭firewalld
[root@Nginx ~]# systemctl stop firewalld
[root@Nginx ~]# systemctl disable firewalld

//临时关闭selinux
[root@Nginx ~]# setenforce 0

//初始化基本目录
[root@Nginx ~]# mkdir /soft/{code,logs,package,backup} -p
2. 安装nginx所需依赖,配置nginx官方yum源
//基本安装包
[root@Nginx ~]# yum install -y gcc gcc-c++ autoconf \
pcre pcre-devel make automake wget httpd-tools vim tree

如果这一步出错,出现类似于运行yum时出现/var/run/yum.pid已被锁定,PID为xxxx的另一个程序正在运行的问题解决方案:https://blog.csdn.net/weixin_42956047/article/details/89455811

以下安装Nginx方式二选一:
(方式一:我没有成功)

//配置Nginx官方Yum源
[root@Nginx ~]# vim /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
3. 安装nginx
//安装Nginx
[root@Nginx ~]# yum install nginx -y

//查看Nginx当前版本
[root@Nginx ~]# nginx -v
nginx version: nginx/1.12.2

(方式二:我运行成功)
在Nginx官网选择自己想要安装的版本:
https://nginx.org/en/download.html
我选择的是稳定版本,然后鼠标右键,复制链接地址为https://nginx.org/download/nginx-1.14.2.tar.gz

在Centos7 控制台输入:

[root@localhost gmz]# wget https://nginx.org/download/nginx-1.14.2.tar.gz
[root@localhost gmz]# ls
nginx-1.14.2.tar.gz  公共  模板  视频  图片  文档  下载  音乐  桌面

将下载的安装包解压缩:

[root@localhost gmz]# tar zxvf nginx-1.14.2.tar.gz
[root@localhost nginx-1.14.2]# ls
auto     CHANGES.ru  configure  html     man     src
CHANGES  conf        contrib    LICENSE  README

设置安装路径:

[root@localhost nginx-1.14.2]# ./configure --prefix=/usr/local/nginx

根据报错提示,我安装了“zlib-devel”,重新运行以上命令,安装成功。
https://blog.csdn.net/weixin_42956047/article/details/89457338

[root@localhost nginx-1.14.2]# yum install -y zlib-devel
安装Nginx(通过从官网下载压缩包):

注意:先进入到Nginx安装包解压缩后的文件夹路径
在这里插入图片描述

[root@localhost home]# cd /home/gmz/nginx-1.14.2

[root@localhost nginx-1.14.2]# ls
auto     CHANGES.ru  configure  html     Makefile  objs    src
CHANGES  conf        contrib    LICENSE  man       README

[root@localhost nginx-1.14.2]# ./configure --prefix=/usr/local/nginx

[root@localhost nginx-1.14.2]# make && make install

目前我的Nginx是安装在下图所示目录:
在这里插入图片描述

4. 启动Nginx

进入到启动 nginx 的二进制文件所在目录:

[root@localhost nginx]# cd /usr/local
[root@localhost local]# ls
bin  etc  games  include  lib  lib64  libexec  nginx  sbin  share  src
[root@localhost local]# cd nginx
[root@localhost nginx]# ls
conf  html  logs  sbin
[root@localhost nginx]# cd sbin/
[root@localhost sbin]# ls
nginx
[root@localhost sbin]# cd ..

启动Nginx命令:

[root@localhost nginx]# ./sbin/nginx   启动Nginx

注意:这里是先进入到Nginx安装路径,然后启动:

我是安装在  /usr/local/nginx
cd sbin
./nginx 启动Nginx

可以通过命令行判断Nginx是否已经启动,然后可以找到:

[root@localhost nginx]# ps -ef | grep nginx
root       7292      1  0 20:08 ?        00:00:00 nginx: master process ./sbin/nginx
nobody     7294   7292  0 20:08 ?        00:00:00 nginx: worker process
root       7374   3461  0 20:13 pts/0    00:00:00 grep --color=auto nginx

但是我运行Nginx命令是报错:

[root@localhost sbin]# -bash:nginx
bash: -bash:nginx: 未找到命令...

在这里插入图片描述
在这里插入图片描述

找到进占用端口号的地进程id,不断杀死进程,知道运行 ./nginx 不报错在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值