Nginx基础

2 篇文章 0 订阅

Nginx

Nginx 是开源、高性能、高可靠的 Web 和反向代理服务器,而且支持热部署,几乎可以做到 7 * 24 小时不间断运行,即使运行几个月也不需要重新启动,还能在不间断服务的情况下对软件版本进行热更新。性能是 Nginx 最重要的考量,其占用内存少、并发能力强、能支持高达 5w 个并发连接数,最重要的是,配置使用也比较简单。

Nginx的安装

环境说明:Linux为腾讯云的CentOS7.6

安装命令:

# 没有yum命令的可能需要安装一下yum命令
yum install nginx -y

在这里插入图片描述

查看安装信息:

rpm \-ql nginx

在这里插入图片描述

主要文件说明

# 我们使用时核心需要关注的文件夹有两个/etc/nginx/和/usr/share/nginx
/etc/nginx/conf.d/ #是子配置项存放处
/etc/nginx/nginx.conf # 主配置文件会默认把这个文件夹中所有子配置项都引入

/usr/share/nginx/html/ #静态文件都放在这个文件夹,也可以根据你自己的习惯放在其他地方

# Nginx配置文件
# nginx 主配置文件
/etc/nginx/nginx.conf 
/etc/nginx/nginx.conf.default

# 可执行程序文件
/usr/bin/nginx-upgrade
/usr/sbin/nginx

# nginx库文件
# 用于配置系统守护进程
/usr/lib/systemd/system/nginx.service
# Nginx模块目录
/usr/lib64/nginx/modules

# 帮助文档
/usr/share/doc/nginx-1.16.1
/usr/share/doc/nginx-1.16.1/CHANGES
/usr/share/doc/nginx-1.16.1/README
/usr/share/doc/nginx-1.16.1/README.dynamic
/usr/share/doc/nginx-1.16.1/UPGRADE-NOTES-1.6-to-1.10

# 静态资源目录
/usr/share/nginx/html/404.html
/usr/share/nginx/html/50x.html
/usr/share/nginx/html/index.html

# 存放Nginx日志文件
/var/log/nginx

Nginx常用命令

# 开机配置
# 开机自动启动
systemctl enable nginx
# 关闭开机自动启动
systemctl disable nginx


# 启动Nginx
# 启动Nginx成功后,可以直接访问主机IP,此时会展示Nginx默认页面
systemctl start nginx

# 停止Nginx
systemctl stop nginx

# 重启Nginx
systemctl restart nginx

# 重新加载Nginx
systemctl reload nginx

# 查看 Nginx 运行状态
systemctl status nginx

# 查看Nginx进程
ps -ef | grep nginx

# 杀死Nginx进程
# 根据上面查看到的Nginx进程号,杀死Nginx进程,-9 表示强制结束进程
kill -9 pid

# Nginx 应用程序命令:
# 向主进程发送信号,重新加载配置文件,热重启
nginx -s reload
# 重启 Nginx
nginx -s reopen
# 快速关闭
nginx -s stop
# 等待工作进程处理完成后关闭
nginx -s quit
# 查看当前 Nginx 最终的配置
nginx -T 
# 检查配置是否有问题
nginx -t

查看端口下的服务:

# 查看占用端口号的服务
netstat -nlp 

# 查看某个服务的进程信息
ps -ef|grep 服务名称

# 查看当前进程的端口号
netstat -anp|grep 进程号

# 查看某个端口下的服务
lsof -i:端口号
lsof -i:端口号|grep 服务名

启动nginx:

systemctl start nginx

访问nginx:

在这里插入图片描述

问题:发现页面内容是CentOS内容?

解决问题:

1,查看nginx状态

# 简约版
nginx -t
# 全面版

在这里插入图片描述

2,查看nginx配置文件信息

vim /etc/nginx/nginx.conf

在这里插入图片描述
发现80端口下的root路径指向/usr/share/nginx/html

3,查看/usr/share/nginx/html下信息

cd /usr/share/nginx/html
ls

在这里插入图片描述

3,index,html看起来很熟悉,进去看一下

vim index.html 

在这里插入图片描述

发现这就是我们使用ip直接访问时看到的内容;说明nginx安装是没有问题的,他默认显示的就是CentOS页面。后期我们可以根据我们自己的需求,修改对应的index.html路径。

Nginx核心配置

Nginx经典配置示例:

# main段配置信息
user  nginx; # 运行用户,默认即是nginx,可以不进行设置
worker_processes  auto; # Nginx 进程数,一般设置为和 CPU 核数一样
error_log  /var/log/nginx/error.log warn; # Nginx 的错误日志存放目录
pid        /var/run/nginx.pid; # Nginx 服务启动时的 pid 存放位置

# events段配置信息
events {
    use epoll; # 使用epoll的I/O模型(如果你不知道Nginx该使用哪种轮询方法,会自动选择一个最适合你操作系统的)
    worker_connections 1024; # 每个进程允许最大并发数
}

# http段配置信息
# 配置使用最频繁的部分,代理、缓存、日志定义等绝大多数功能和第三方模块的配置都在这里设置
http {
    # 设置日志模式
    log_format  main '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log main; # Nginx访问日志存放位置

    sendfile            on; # 开启高效传输模式
    tcp_nopush          on; # 减少网络报文段的数量
    tcp_nodelay         on;
    keepalive_timeout   65; # 保持连接的时间,也叫超时时间,单位秒
    types_hash_max_size 2048;

    include             /etc/nginx/mime.types; # 文件扩展名与类型映射表
    default_type        application/octet-stream; # 默认文件类型

    include /etc/nginx/conf.d/*.conf; # 加载子配置项
    
    # server段配置信息
    server {
     listen       80; # 配置监听的端口
     server_name  localhost; # 配置的域名
      
     # location段配置信息
     location / {
      root   /usr/share/nginx/html; # 网站根目录
      index  index.html index.htm; # 默认首页文件
      deny 172.168.22.11; # 禁止访问的ip地址,可以为all
      allow 172.168.33.44;# 允许访问的ip地址,可以为all
     }
     
     error_page 500 502 503 504 /50x.html; # 默认50x对应的访问页面
     error_page 400 404 error.html; # 同上
    }
}
  • main全局配置,对全局生效。
  • events 配置影响 Nginx 服务器与用户的网络连接。
  • http 配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。
  • server 配置虚拟主机的相关参数,一个 http 块中可以有多个 server 块。
  • location 用于配置匹配的 uri 。
  • upstream 配置后端服务器具体地址,负载均衡配置不可或缺的部分。

层级结构如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SVpk8Ypv-1656729739720)(Nginx.assets/640)]

全局生效。

  • events 配置影响 Nginx 服务器与用户的网络连接。
  • http 配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。
  • server 配置虚拟主机的相关参数,一个 http 块中可以有多个 server 块。
  • location 用于配置匹配的 uri 。
  • upstream 配置后端服务器具体地址,负载均衡配置不可或缺的部分。

层级结构如下:
在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值