Nginx 丢失Cookies问题。所需的防伪表单字段“__RequestVerificationToken”不存在

本文主要是介绍Nginx 丢失Cookies问题。所需的防伪表单字段“__RequestVerificationToken”不存在,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、所需的防伪表单字段“__RequestVerificationToken”不存在

1.1 Nginx C# ASP.Net Mvc 丢失cookies 问题。

1.1.1 解释 underscores_in_headers 配置

上面图片的意思是 【指示是否传递原始请求的标头字段 到代理服务器。】。

#PROXY-START/# 防止带下划线的cookies丢失。underscores_in_headers on;location  /
{proxy_pass http://10.0.8.2:8055/;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header REMOTE-HOST $remote_addr;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection $connection_upgrade;proxy_cookie_domain 10.0.8.2:8055 10.0.8.100:8055;  proxy_http_version 1.1;# proxy_hide_header Upgrade;add_header X-Cache $upstream_cache_status;#Set Nginx Cacheset $static_fileQoRZZHQC 0;if ( $uri ~* "\.(gif|png|jpg|css|js|woff|woff2)$" ){set $static_fileQoRZZHQC 1;expires 1m;}if ( $static_fileQoRZZHQC = 0 ){add_header Cache-Control no-cache;}
}#PROXY-END/

详解

Nginx underscores_in_headers 配置详解

在 Nginx 中,underscores_in_headers 是一个指令,用于控制 Nginx 是否允许在 HTTP 头字段中使用下划线(_)。

默认情况

默认情况下,Nginx 不允许在 HTTP 头字段中使用下划线。因为根据 HTTP/1.1 规范,HTTP 头字段的名称应该是由大写字母、小写字母、数字和短划线组成,并且不能包含任何其他字符。因此,如果尝试在 HTTP 头字段中使用下划线,Nginx 会将其视为无效的字段名并忽略该字段。

启用下划线支持

然而,在某些情况下,使用下划线可能对于某些扩展 HTTP 头字段是有必要的。在这种情况下,可以使用 underscores_in_headers 指令来启用下划线的支持。

语法如下:

underscores_in_headers on;  

当设置 underscores_in_headers 为 on 时,Nginx 将允许在 HTTP 头字段中使用下划线。例如,如果设置以下指令:

underscores_in_headers on;  

那么 Nginx 将接受以下 HTTP 头字段:

Custom-Header: abc  
X-Another-Header: 123  

注意

尽管 Nginx 允许在 HTTP 头字段中使用下划线,但仍然建议遵循 HTTP/1.1 规范,并避免使用下划线作为 HTTP 头字段名称的一部分。这是因为不是所有的 HTTP 客户端和服务端都支持在 HTTP 头字段中使用下划线的配置。因此,使用带有下划线的 HTTP 头字段可能会在某些情况下导致问题。

这篇关于Nginx 丢失Cookies问题。所需的防伪表单字段“__RequestVerificationToken”不存在的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/288161

相关文章

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

Vue3绑定props默认值问题

《Vue3绑定props默认值问题》使用Vue3的defineProps配合TypeScript的interface定义props类型,并通过withDefaults设置默认值,使组件能安全访问传入的... 目录前言步骤步骤1:使用 defineProps 定义 Props步骤2:设置默认值总结前言使用T

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

解决升级JDK报错:module java.base does not“opens java.lang.reflect“to unnamed module问题

《解决升级JDK报错:modulejava.basedoesnot“opensjava.lang.reflect“tounnamedmodule问题》SpringBoot启动错误源于Jav... 目录问题描述原因分析解决方案总结问题描述启动sprintboot时报以下错误原因分析编程异js常是由Ja

MySQL 表空却 ibd 文件过大的问题及解决方法

《MySQL表空却ibd文件过大的问题及解决方法》本文给大家介绍MySQL表空却ibd文件过大的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录一、问题背景:表空却 “吃满” 磁盘的怪事二、问题复现:一步步编程还原异常场景1. 准备测试源表与数据

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

解决Nginx启动报错Job for nginx.service failed because the control process exited with error code问题

《解决Nginx启动报错Jobfornginx.servicefailedbecausethecontrolprocessexitedwitherrorcode问题》Nginx启... 目录一、报错如下二、解决原因三、解决方式总结一、报错如下Job for nginx.service failed bec

SysMain服务可以关吗? 解决SysMain服务导致的高CPU使用率问题

《SysMain服务可以关吗?解决SysMain服务导致的高CPU使用率问题》SysMain服务是超级预读取,该服务会记录您打开应用程序的模式,并预先将它们加载到内存中以节省时间,但它可能占用大量... 在使用电脑的过程中,CPU使用率居高不下是许多用户都遇到过的问题,其中名为SysMain的服务往往是罪魁

MySQ中出现幻读问题的解决过程

《MySQ中出现幻读问题的解决过程》文章解析MySQLInnoDB通过MVCC与间隙锁机制在可重复读隔离级别下解决幻读,确保事务一致性,同时指出性能影响及乐观锁等替代方案,帮助开发者优化数据库应用... 目录一、幻读的准确定义与核心特征幻读 vs 不可重复读二、mysql隔离级别深度解析各隔离级别的实现差异