怎么在Nginx 重定向时获取域名
发表于:2024-10-24 作者:千家信息网编辑
千家信息网最后更新 2024年10月24日,怎么在Nginx 重定向时获取域名?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。HTTP 请求跳转到同名的 HTTPS 请求,配置如下:
千家信息网最后更新 2024年10月24日怎么在Nginx 重定向时获取域名
怎么在Nginx 重定向时获取域名?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
HTTP 请求跳转到同名的 HTTPS 请求,配置如下:
http { server { listen 80; server_name sub1.example.com sub2.example.com; return 301 https://$server_name$request_uri; } server { listen 443 ssl spdy; server_name sub1.example.com sub2.example.com; # ... }}
因为 301 是永久重定向,某些浏览器的缓存会记住重定向,下次访问原地址就会直接向新地址发请求,所以这个问题在浏览器里面不一定重现得了(包括 Chrome 的 Incognito Window),能每次完整重现的方式只有 curl 。
$ curl -I http://sub2.example.com/HTTP/1.1 301 Moved PermanentlyServer: nginx/1.9.3 (Ubuntu)Date: Tue, 23 Feb 2016 06:06:30 GMTContent-Type: text/htmlContent-Length: 193Connection: keep-aliveLocation: https://sub1.example.com/
查了一下,发现问题出在 $server_name
变量上。这个变量会始终返回 server_name 中第一个名字。这里其实应该用 $host
变量。修改后的配置如下:
http { server { listen 80; server_name sub1.example.com sub2.example.com; return 301 https://$host$request_uri; }}
$host
变量会按照以下优先级获取域名:
Request-Line 中的域名信息。Request-Line 包含 method, uri 和 HTTP 版本。
请求头信息中的 "Host" 。
Nginx 中匹配的 server_name 配置。
看完上述内容,你们掌握怎么在Nginx 重定向时获取域名的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
域名
变量
问题
配置
信息
内容
地址
方法
更多
浏览器
浏览
束手无策
为此
优先级
原因
只有
名字
对此
得了
技能
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
天津东丽软件开发公司
扬州网络安全竞赛成绩查询
学习计算机网络技术的方法
英雄联盟四川达州服务器有哪些
冒险岛装备数据库
游戏软件开发专业代码
mysql数据库设计总结体会
计算机软考中软件开发
芒果数据库 哪国
软件开发在哪里开发更安全
海量数据库好还是达梦好
珠海高清视频会议服务器品牌
榆社移动dbs服务器地址
数据库多表连接数据更新数据
yaf数据库
肇庆智能软件开发方案
五常软件开发培训学校
关于网络安全叙述正确的是
软件开发方案描述
传奇服务器入侵
软件开发他是怎么开发的
华博互联网科技小额贷款下载
hp服务器监控
服务器遇到网络攻击怎么办
服务器前置硬盘亮黄灯一直响
中软飞腾服务器
浪潮服务器 管理口 ip
数据库应用项目化教程答案
软件开发人员绩效管理表格
国际互联网科技