最近一个项目需要承载高并发请求,所以在后端语言上选择了NodeJs,但是nodejs有时候读取不到请求的主机名,所以想到使用nginx+nodejs的方式进行处理。
Nginx 配置
代码如下
upstream io_nodes {
server 127.0.0.1:8081;
}
server {
listen 80;
listen [::]:80;
root /var/www/html;
server_name ~^(?<subdomain>.+).example.com;
location / {
proxy_set_header Host $host;
proxy_set_header X-AppId $subdomain;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://io_nodes;
}
}
重启nginx服务器即可。nginx会将所有的 **.example.com** 格式的域名反向代理到本机的**8081**端口,该端口为**nodejs**监听端口。
NodeJs 读取请求域名以及子域名名称
使用express
var host = req.headers.host;
var appid = req.headers['x-appid'];
以上所述是小编给大家介绍的nginx泛域名解析配置教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对软件开发网网站的支持!
您可能感兴趣的文章:nginx将泛解析的匹配域名绑定到子目录配置方法Nginx泛解析到子目录后自动判断有无public目录详解