[Nginx]Nginx应用基础

2023-03-06  本文已影响0人  AbstractCulture

静态资源服务

通过本地文件系统提供服务

反向代理

为什么需要反向代理,因为随着微服务的推行,应用会进行集群化部署,这就需要在代理端进行负载均衡和动态路由等功能

API服务

Nginx的组成

Nginx二进制可执行文件

由各模块源码编译出的一个文件

Nginx.conf配置文件

控制Nginx的行为

access.log访问日志

记录每条http请求信息

error.log错误日志

定位问题

启动nginx

这里不展示nginx的安装繁琐过程,笔者选用的是docker直接容器启动并且挂载文件的方式.具体的docker挂载目录如下:

image.png

Nginx基础语法

http {
    upstream myserver {
        ip_hash; 
        server 192.168.37.139:8801 weight=1;
        server 192.168.37.139:8802 weight=1;
        #down 不参与负载均衡
        #weight=5; 权重,越⾼分配越多
        #backup; 预留的备份服务器
        #max_fails 允许失败的次数
        #fail_timeout 超过失败次数后,服务暂停时间
        #max_coons 限制最⼤的接受的连接数
    }
    server {
        location / {
            proxy_pass http://myserver;
            proxy_connect_timeout 10;
        }
    }
}
http{
    //...
}

配置参数-时间

名称 含义
ms millliseconds
s seconds
m minutes
h hours
d days
w weeks
M months,30 days
y years,365 days

配置参数-空间

名称 含义
bytes bytes
k/K kilobytes
m/M megabytes
g/G gigabytes

http配置的指令块

域名,可以是一个,可以是一组

上游服务,需要跟tomcat打交道的时候可以配置一个upstream.

upstream tomcat{
    server 127.0.0.1:8080;
}

代表的是url资源

location /api {
    proxy_pass http://myserver;
    proxy_connect_timeout 10;
}

nginx命令行

比如重新加载nginx配置:

nginx -s reload

需要查看指令目录或者帮助:

nginx -h

指定配置文件启动:

nginx -c

指定配置指令:

nginx -g

指定目录运行:

nginx -p

发送信号:

nginx -s stop/quit/reload/reopen

验证配置文件是否有语法错误:

nginx -t/-T

打印nginx的版本信息等:

nginx -v

假设每天都需要备份一份日志出来,这个时候你可能需要用到日志切割.

cd /var/log/nginx
mv access.log bak.log  
../etc/nginx -s reopen

可以让运维写一个定时任务脚本,自动做日志切割.

上一篇 下一篇

猜你喜欢

热点阅读