nchan_access_control_allow_credentials
nchan_access_control_allow_credentials 指令控制是否允许通过 Nchan 发出的跨源请求携带凭据。
Scalable, flexible pub/sub server for the modern web
·
httpserverlocationif in location
语法nchan_access_control_allow_credentials on | off;
默认值off
上下文http, server, location, if in location
参数1
说明
nchan_access_control_allow_credentials 指令是 Nginx 的 Nchan 模块的一部分,该模块实现了可扩展的发布/订阅消息系统。该指令通过决定在使用 Nchan 时浏览器是否被允许在跨源请求中包含凭据(例如 cookies 或 HTTP 身份验证方案)来影响跨域资源共享(CORS)的行为。当设置为 'on' 时,它允许客户端应用在向 Nchan 服务发出请求时携带凭据,从而为需要认证和跨域有状态交互的 Web 应用提供更大的灵活性。
该指令可接受单个参数:'on' 或 'off'。将其设置为 'on' 会启用凭据共享,从而使得存储在 cookies 中的会话数据能够随跨域 AJAX 请求发送,这对于跨域的认证请求正常工作至关重要。当需要客户端与位于不同源的 Nchan 服务器之间进行安全通信时,这种配置非常有用。
在应用该指令的上下文中——http、server 或 location 块——其效果可以相应地进行作用域限制,从而对跨源请求进行强有力的控制。然而,必须确保你的应用及其后端服务器已正确配置以处理凭据,以避免启用 CORS 后产生的安全漏洞。
配置示例
location /pubsub {
nchan_access_control_allow_credentials on;
}⚠
确保 Nginx 服务器也已配置正确的 CORS 响应头,以避免浏览器限制导致的问题。
⚠
仅在你能接受将凭证跨域共享所带来的安全影响时再启用此指令。