NGINX 常用配置
2023-09-11 14:20:30 时间
隐藏版本号
1
|
http {
|
nginx Basic 认证
-
生成用户密码
1
htpasswd -c /usr/local/nginx/conf/nginx.passwd.db admin
-
更新密码
1
htpasswd /usr/local/nginx/conf/nginx.passwd.db admin
-
配置内容
1
2
3
4location / {
auth_basic "View is cheap,show me the password!";
auth_basic_user_file nginx.passwd.db;
}
限制$http_x_forwarded_for
1
|
set $allow false;
|
限制请求方法
1
|
if ($request_method !~ ^(GET|POST)$ ) {
|
过滤特殊UA
if ($http_user_agent ~* sqlmap|wget|curl) {
return 403;
}
图片防盗链
1
|
location /images/ {
|
- “Referer”请求头为指定值时,内嵌变量$invalid_referer被设置为空字符串, 否则这个变量会被置成”1”。查找匹配时不区分大小写。
- valid_referers:验证referer
- none: 允许referer为空,
- blocked: 允许不带协议的请求.
配置反向代理
1
|
http {
|
nginx开启keepalive
1
|
upstream realserver {
|
-
keepalive: 指定每个nginx worker可以保持的最大连接数量为1024,默认不设置,即nginx作为client时keepalive未生效。
-
proxy_http_version 1.1: 开启keepalive要求HTTP协议版本为HTTP 1.1。
-
proxy_set_header Connection “”: 为了兼容老的协议以及防止http头中有Connection close导致的keepalive失效,这里需要及时清掉HTTP头部的Connection。
-
keepalive_requests: 设置可通过一个保持连接提供服务的最大请求数。在发出最大请求数后,连接将关闭。
-
keepalive_timeout:
- upstream中的keepalive_timeoute是ngx_http_upstream_module模块中的功能,是1.15.3后的新特性,设置空闲保持连接的超时时间。
- upstream外的keepalived是ngx_http_core_module模块中的功能,第一个参数是保持活动的客户机连接将在服务器端保持打开状态的超时时间。0表示禁用保持活动的客户端连接。可选的第二个参数在”Keep-Alive: timeout=time”响应头字段中设置一个值。两个参数可以不同。
nginx开启目录查看
1
|
server {
|
-
autoindex_exact_size: 为on(默认)时显示文件的确切大小,单位是byte;改为off显示文件大概大小,单位KB或MB或GB
-
autoindex_localtime: 为off(默认)时显示的文件时间为GMT时间;改为on后,显示的文件时间为服务器时间
浏览器不显示文件内容直接下载文件
1
|
if ($request_filename ~* ^.*?\.(txt|pdf)$) {
|
nginx获取用户真实IP
1
|
set_real_ip_from 10.0.0.0/8; #真实服务器上一级代理的IP地址或者IP段,可以写多行。
|
- X-Forwarded-For 变量,是squid开发的,用于识别请求通过了哪些HTTP代理或负载平衡器,记录相应IP地址列表的非rfc标准,如果设置了X-Forwarded-For,那么每次经过proxy转发请求后都会有记录。
nginx 强制跳转https
1
|
if ( $scheme = http ){
|
防恶意抓取
1
|
http {
|
- geo设置白名单
nginx健康检查机制
check_http_expect_alive [ http_2xx | http_3xx | http_4xx | http_5xx ]
返回指定HTTP code,符合预期就算检测成功
通过nginx查看txt文本文件乱码
- 文件后缀必须是.txt而不是.html,否则换行显示会有问题
1
2
3server:
default_type 'text/html';
charset utf-8,gbk;
nginx代理文件下载以及时间显示问题
1
|
location / {
|
nginx try_files
nginx location @
nginx缓存配置
nginx 根据uuid灰度
nginx限制并发连接数
nginx限制请求频率
nginx存活检测
nginx upstream backup机制
1
|
rewrite_log on;
|
相关资料
相关文章
- Spring 使用AOP——基于注解配置
- css-theme 通过一套源码生成一份包含多套皮肤配置的样式文件
- CI框架在 nginx 服务器上配置 rewrite 去掉 index.php 的方法:
- 【总结1】PhpStorm配置XDebug(远程)调试PHP
- 宝塔ngnix1.8配置启用TLS1.2
- spring:设置映射访问路径 或 xml配置访问路径 (spring mvc form表单)
- 揭开.NET 2.0配置之谜(二)
- Centos 7.6配置nginx反向代理负载均衡集群
- centos 6.6 Nginx 安装配置(已纠正)
- nginx中文域名配置
- Nginx配置文件(nginx.conf)配置详解
- 【收藏】Keepalived+Nginx高可用配置(偏nginx配置)
- 【收藏】HBase表管理系统——HBaseManager2.0.6环境配置
- [Nginx]Nginx的基本配置与优化1(完整配置示例与虚拟主机配置)
- nginx使用与配置入门指南
- Nginx伪静态配置和常用Rewrite伪静态规则集锦
- 001-nginx基础配置-location、Rewrite、return 直接返回码、全局变量
- aria2的下载配置
- 嵌入式linux开发,Ubuntu下安装、使用cmake及图形界面cmake-gui,及cmake配置交叉编译工具
- CentOS+Nginx+PHP+MySQL详细配置(图解)
- nginx的启动、停止、重载配置、验证配置
- Consul ACL集群配置说明以及ACL Token的用法
- 刷题记录:牛客NC14699队伍配置
- CentOS7安装CDH(七):CDH集群Hadoop的HA配置
- 【Nginx】配置详解