IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> nginx学习(一) -> 正文阅读

[系统运维]nginx学习(一)

查看 nginx 安装目录

ps -ef | grep nginx
?

nigix基本结构
?main ?全局配置
?event ?配置工作模式以及连接
?http ?http模块相关配置
? ? server ? ? ?虚拟服务器配置 可以有多个
? ? location ? 路由规则 ? ??
? ? upstream 集群,内网服务器
?


二、查看配置文件 nginx.conf 路径?

nginx -t

当然也可以使用 find 命令进行文件查找

# 从 / 根目录下查找文件名为 nginx.conf 的文件
find / -name nginx.conf
# 从 /etc 目录下查找文件名为 nginx.conf 的文件
find /etc -name nginx.conf


三 ?giz压缩相关配置

?1 gzip on 开启gzip压缩
?2 gzip_min_length ?1 ?(小于1字节不会压缩)
?3 gzip_comp_level ?3 ( 压缩级别,1-9 )
?4 gzip_ctypes ?(定义压缩文件的类型)


四 静态资源
? 几种配置方式 (可以有多个location,公用一个端口)

{
??? ?listen 90
??? ?server_name localhost
??? ?location / {
? ? ? ?? ??? ?root /home/static ; ? ?#访问/home/pic/1.jpg 可以访问index.html
?? ??? ?index index.html
??? ?}
?? ?
?? ?location /pic {
?? ??? ? root /home ? ?#访问/home/pic/1.jpg 可以访问
?? ?}
?? ? ?
?? ?location /image {
?? ??? ?alias ?/home/static ? ?#采用别名的方式 ?访问/home/image/1.jpg 可以访问
?? ?} ?别名的方式隐藏了真实的服务器路径是一种比较好的方式
}

location的匹配规则

server{
? ? ? ? ? ? ? (1 精准匹配)
?? ?liten 91
? ? ? ? ? ? ? ? server_name ?location
? ? ? ? ? ? ? ? location =/ img/1.jpg { ? # =表示精确匹配,只能访问/home/img/1.jpg其他无法访问
?? ??? ?root ?/home
? ? ? ? ? ? ? ? }
?? ?(1 正则匹配)
?? ? location =~*\.(gif|png|jpg|jpeg) { ? # =表示只要是访问/home/i下的图片都能访问到
?? ??? ?root ?/home
? ? ? ? ? ? ? ? }
}

五 静态资源如何防止盗连?
server{
??? ?valid_referers *.baidu.com;
??? ?if($invalid_referer){
?? ??? ?return 404
?? ? }
?? ?location{
?? ??? ?xxx
? ? ? ??? ?}
}
如果访问的静态资源不是在baidu.com域下,则视为无效的,无法访问

六 负载均衡

niginx默认的负载均衡采用的是轮询的策略,通过upstream可以设置负载均衡;
当然也可以给服务器添加权重来分配服务器负载
upstream{
?server 192.168.1.23:8080 weight=1
?server 192.168.1.170:8080 weight=5
?server 192.168.1.180:8080 weight=3
}
#我们给170的服务器设置权重为5,它拥有最高的权重,其实是180的服务器,也就是意味着
#170的服务器会优先接收客户端http请求
server{
? ? ?listen 80
? ? ? server_name www.baidu.com
? ? ?location /{
? ? ? }
}

负载均衡的配置大多通过再upstream指令中配置,配置项中间用空格隔开 常见的有
upstream{
?server 192.168.1.23:8080 max_conns
?server 192.168.1.170:8080 slow_start
?server 192.168.1.180:8080 down (停掉该服务器)
?server 192.168.1.190:8080 max_fails fail_timeout ()
?server 192.168.1.120:8080 backup (备份服务器当其他服务停止时该服务器会运行)
}

nginx缓存处理---
niginx的缓存主要分两部分,一部分是针对浏览器客户端,niginx的缓存处理主要是通过expires指令实现的;
其具体参数配置有如下几种形式:另外一部分是针对上游服务器。首先看针对浏览器的配置
server{
?? ?exipres 10s ? #10s以后过期
?? ?expires @xxhxxm ?@22h30m ?#表示每天的22:30过期
? ?? ?expires -[time] ? ? -1h #表示已经过期类似于cookie的设置
?? ?expires epoch?? ?强制不缓存
?? ?expires max?? ?nigix自动设置一个最大的过期时间,强制缓存
?? ?expires off?? ?关闭缓存,采用默认行为

}
而针对上游服务器的缓存处理,只要是通过proxy_cache_path这个指令来实现的
proxy_cache_path ?/usr/local/nignx/upstream_cache keys_zone=mycache:5m max_size=1g inactive=30s use_temp_path=off
upstream{
}
#key_zone 设置共享内存以及占用的空间大小
#max_size 设置缓存大小
#inactive 超过此事件则缓存自动清理
#use_temp_path 关闭临时目录
server{
}
?

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-05-24 18:35:01  更:2022-05-24 18:35:40 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 15:22:04-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码