1.websocket 配置
location ^~ /hello/ {
proxy_pass http://172.16.2.65:8083/archives/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 1800s;
}
- 隐藏 Nginx 版本号
server {
# 在 http/server 上下文中关闭 Server 头
server_tokens off;
}
3.禁用非必要 HTTP 方法
location / {
# 只允许 GET/POST/HEAD 方法
if ($request_method !~ ^(GET|POST|HEAD)$ ) {
return 405;
}
}
4.防止目录遍历和敏感文件泄露
location ~ /\. {
deny all; # 禁止访问隐藏文件(如 .git/.env)
}
location ~* \.(log|bak|conf|sql)$ {
deny all; # 禁止下载日志、备份等文件
}
5.限制信息泄露错误页面
server {
# 自定义错误页面(避免暴露服务器信息)
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /404.html {
internal; # 禁止直接访问
}
}

本文详细介绍了WebSocket配置的步骤,包括location指令、代理设置、HTTP版本指定、Upgrade头信息和连接保持等关键参数。通过这些配置,可以实现长连接的WebSocket服务,提升实时通信效率。适用于构建实时聊天、在线游戏等应用场景。
1084

被折叠的 条评论
为什么被折叠?



