首页 > 系统相关 >Nginx 配置HTTP跳转到HTTPS

Nginx 配置HTTP跳转到HTTPS

时间:2023-06-29 10:44:14浏览次数:53  
标签:www HTTP xxx server Nginx 域名 https 跳转 com

https 访问我们的测试域名 https://www.xxx.com 站点,但是当我们直接在浏览器地址栏中直接输入 www.xxx.com 的时候却发现进入的是 http 协议的网站,这与我们的初衷不一致。

 

由于浏览器默认访问域名使用的是80端口,而当我们使用SSL证书后,网站的端口就变成了443,所以当我们直接在浏览器中输入网址 www.xxx.com 的时候进入的是 80 端口的 HTTP 站点而不是 443 端口的 HTTPS 站点。

 

解决方法

 

这里提供两种 http 跳转到 https 的方法:

1. 使用nginx的 rewrite 将请求过来的 http URL直接重写成 https

server {
    listen 80;
    
    #填写绑定证书的域名
    server_name www.xxx.com;
    
    #强制将http的URL重写成https
    rewrite ^(.*) https://$server_name$1 permanent; 
}

 

2. 使用301重定向的方式将 http 的请求重定向到 https 上

server {
    listen 80;
    
    #填写绑定证书的域名
    server_name www.xxx.com;
    
    #把http的域名请求转成https
    return 301 https://$host$request_uri;
}

 

完整配置

#HTTP配置
server {
    listen 80;
    
    #填写绑定证书的域名
    server_name www.xxx.com;
    
    #(第一种)把http的域名请求转成https
    return 301 https://$host$request_uri;
    
    #(第二种)强制将http的URL重写成https
    rewrite ^(.*) https://$server_name$1 permanent; 
}

#HTTPS使用SSL访问的配置
server {
    #SSL使用443端口
    listen 443 ssl;
    
    #SSL证书绑定的单域名
    server_name www.xxx.com;
    
    #证书pem文件
    ssl_certificate /usr/cert/www_xxx_com.pem;
    
    #证书key文件
    ssl_certificate_key /usr/cert/www_xxx_com.key;
    
    #缓存SSL握手产生的参数和加密密钥的时长
    ssl_session_timeout 5m;
    
    #使用的加密套件的类型
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; 
    
    #表示使用的TLS协议的类型
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    
    #加密套件优先选择服务器的加密套件
    ssl_prefer_server_ciphers on; 
    
    #spa应用配置
    location / {
       root /var/www/mainApp; #配置应用的文件夹
       index index.html index.htm;
       try_files $uri $uri/ /index.html;
    }
}

 

以上配置成功后执行 nginx -s reload ,然后就可以直接在浏览器中输入 域名 访问 而不是 输入 https://www.xxx.com 才能访问 HTTPS 的站点了, 即:直接通过浏览器输入域名 www.xxx.com 访问网站,进入的就是 HTTPS 的站点。

标签:www,HTTP,xxx,server,Nginx,域名,https,跳转,com
From: https://www.cnblogs.com/Fooo/p/17513424.html

相关文章

  • F5配置http请求自动跳转https到后端服务器
    F5配置http请求自动跳转https到后端服务器关联irules_sys_https_redirect实现跳转#HTTP_to_HTTPS_iRule自定义whenHTTP_REQUEST{HTTP::redirect"https://[HTTP::host][HTTP::uri]"}#FactoryF5httpsredirectiRule官方定义whenHTTP_REQUEST{HTTP::redirecthttps://[g......
  • Taurus .Net Core 微服务开源框架:Admin 插件【4-1】 - 配置管理-Kestrel【含https启用
    前言:继上篇:Taurus.NetCore微服务开源框架:Admin插件【3】-指标统计管理本篇继续介绍下一个内容:1、系统配置节点:App- Config 界面界面图如下:双击节点即可进入修改模式,如: 修改说明: 不勾选持久化,该配置当前生效,下次重次失效,修改后配置值旁边带有【temp】说明文......
  • Kong入门学习实践(6)HTTPS与TCP流代理
    最近在学习Kong网关,因此根据老习惯,我会将我的学习过程记录下来,一来体系化整理,二来作为笔记供将来翻看。由于我司会直接使用Kong企业版,学习过程中我会使用Kong开源版。本篇,我们学习快速配置HTTPS跳转与TCP流代理。HTTPS跳转配置HTTP协议虽然应用广泛,简单易用,但存在着巨大的安......
  • Servlet p3 HttpServletRequest对象
    HttpServletRequest对象基本介绍​ HttpServletRequest对象:HttpServletRequest对象专门用于封装HTTP请求消息,简称request对象。主要作用是用来接收客户端发送过来的请求信息,该对象是由Tomcat封装好传递过来。​ HttpServletRequest接口是ServletRequest的子接口。HTTP请......
  • nginx的作用
    Nginx(发音为“engine-x”)是一个高性能的开源Web服务器和反向代理服务器。它被广泛用于构建和部署现代化的Web应用程序。Web服务器静态文件服务:Nginx可以高效地提供静态文件服务,如HTML、CSS、JavaScript、图像等。它能够直接从磁盘中读取静态文件并发送给客户端,避免了将请求......
  • nginx设置为开机自启
    1NGINX安装1.1使用SCP工具上传nginx-1.16.1.tar.gz安装包到/usr/local/目录1.2安装 (该步骤在有网络的条件下可以执行,离线安装可以配置yum源后安装或下载安装包上传安装)1.3安装依赖[root@hadoop4~]#yum -y installgccgcc-c++pcrepcre-develzlibzlib-developensslo......
  • nethttp和gin 路由
    net/http路由注册functest1(){http.HandleFunc("/",func(whttp.ResponseWriter,r*http.Request){fmt.Fprintf(w,"Helloworld!")})err:=http.ListenAndServe(":9001",nil)iferr!=nil{log.F......
  • nginx 小纪
    1、location/ +目录或者文件location/list{alias/usr/share/nginx/html/list;autoindexon;}location/cxd.txt{alias/usr/share/nginx/html/cxd.txt;autoindexon;}如下:2、多域名http{l......
  • bc-liunx欧拉编译安装nginx
    1、下载nginx包上次至目标服务器2、解压包3、安装依赖包yuminstall-ypcrepcre-develpcrepcre-developensslopenssl-develzlibzlib-develgdgd-devel4、编译安装nginx,这里记住nginx不要放在和编译路径一个文件夹,不然会报错,一下是编译命令与建议参数./configure--prefix......
  • HTTPS基础
    一、https基础:HTTP的缺点:通信使用明文,内容可能会被窃听不验证通信方的身份,有可能遭遇伪装无法证明报文的完整性,有可能信息已遭篡改HTTPS=HTTP+加密+认证+完整性保护HTTPS(全称:HyperTextTransferProtocoloverSecureSocketLayer),是以安全为目标的HTTP通道,在HTTP的基础......