无80端口HTTP怎么自动跳转到HTTPS呢?

搬瓦工机场JMS

        在家里的NAS上面搞了点东西,由于是家庭宽带,没有80端口,但是443还是开放着的,所以我做了反代理后,可以通过443直接域名访问就行了,不用加端口了。

        那么问题来了,怎么做才可以不用手动输入HTTPS,直接输入域名访问,就可以自动跳转到HTTPS上面呢?

        我看到论坛上之前有人问过这个问题,有人说套个CDN就可以解决了,不知道真的是这样吗?我还没有用过CDN,不太清楚,不知道谁用过,推荐一下哪家可以呢,最好免费就行,谢谢!

        有人说用vps做301跳转,我没用过这个,这个可以吗?如a.com跳转到https://a.com
河北网友:hsts preload 就是浏览器内置的hsts 列表 首次访问就会自动https 你的80甚至不需要监听
缺点是这个列表是内置进内核的 所以要花很久才能让所有浏览器生效 更别说万年更新的国产
天津网友:浏览器 hsts
https://hstspreload.org/
上海网友:
同一个米301也要在同一台鸡啊,你到底懂不懂
重庆网友:套cdn 不是要北岸吗?
hsts 没试过。
台湾网友:用户首次访问某网站是不受HSTS保护的。这是因为首次访问时,浏览器还未收到HSTS,所以仍有可能通过明文HTTP来访问
安徽网友:不是有免北岸的CDN吗?免北岸的不行吗?
台湾网友:浏览器手动加 hsts 应该不需要首次访问吧,不确定,没有这个需求。

chrome 的 chrome://net-internals/#hsts
Firefox 配置文件中的 SiteSecurityServiceState.txt

参见 https://www.racent.com/blog/clear-hsts-settings-chrome-firefox
湖北网友:那可能就国外的了   cf吧
四川网友:用户端咋办
北京网友:CloudFlare,或者找个小鸡做个301不就行了吗
上海网友: 不知道呀
上海网友: 不知道呀
云南网友:301 跳转
山西网友:frp 或者cdn

frp的的话流量需要经过服务器中转 cdn的话源是https 家宽
北京网友:好象用VPS中转是比较合适的方案

楼主的机器在家里,80端口被封应当是电信局方的操作,没有80端口,这个访问没有的话,再转到443应当没办法。如果外头有个VPS开了80端口,再301跳到https的443指向家里的主机,那应当就行了。
内蒙古网友:随便找一台国外vps 绑定a.com 301到https://x.a.com或者https://b.com 家宽绑x.a.com或者b.com
辽宁网友:
hsts正解

sudo nano /etc/nginx/nginx.conf

http {

    ##
    # Virtual Host Configs
    ##

    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;
    add_header Strict-Transport-Security "max-age=15768000; includeSubDomains" always; #添加这一行
}

nginx -t
service nginx reload

搞定

加了hsts后,https评分一般能到a+
西藏网友:360那**浏览器不支持HSTS
四川网友:用cloudflare,page rule
黑龙江网友:hsts preload 就是浏览器内置的hsts 列表 首次访问就会自动https 你的80甚至不需要监听
缺点是这个列表是内置进内核的 所以要花很久才能让所有浏览器生效 更别说万年更新的国产
新疆网友:
同一个米301也要在同一台鸡啊,你到底懂不懂
四川网友:
同一个米301也要在同一台鸡啊,你到底懂不懂
云南网友:头一回听说301转向需要在同一台机器的,你详细说说?

或者你把比如Apache官方的有关301的说明找出来看看,它也适用于其它比如nginx的301思路,虽然具体用法可能不一样。
宁夏网友:我的意思是同一个米,不同端口的301,不同米当然无所谓
青海网友:那可以换一个方案绕过去,比如

http://www.domain.tld:80 转到 domain.tld:443

反正一般域名中申请SSL默认也就这两个,但实际上这两个是不同的域名,这样在DNS中配置时,不用CNAME,用IP地址也就是A记录,应当能解决。
湖南网友:所以这就是不同米了
贵州网友:居然还有443端口…
台湾网友:我寻思你把https链接保存在书签很费劲? 喜欢手输URL地址?  
浙江网友:那可以这么跳吗?a.com跳到https://a.com,楼下有个人这么说的,岂不是不可以了?

随便找一台国外vps 绑定a.com 301到https://x.a.com或者https://b.com 家宽绑x.a.com或者b.com
内蒙古网友:我没有用过cdn,你可以推荐一下吗,免北岸的?还有这个操作不需要多少流量吧?
江苏网友:一般来说,http_://a.com 和https_://a.com会在DNS设置上将记录指向一处IP地址,就是A记录,然后你呢这个在一台机器上从前者跳转到后者也就是网上有的地方叫 http to https 的配置,这个搜索一下很多地方都有,你看它提供的配置文件,大多能看出来是在同一台机器内跳的。

但是楼主现在的问题是他80号口子给废了,他在用户端没办法改这个设置,所以就只好把这个从80到443的跳的动作让其它服务器来完成,他自己家里的部分只负责接收443的数据,因为这个口子没封。

国外VPS绑 http://a.com,301跳转到 https://a.com 还是在同一个IP也就是这台VPS上,因为A记录两个在一起的,但DNS配置里 x.a.com就可以是另一个IP了,b.com 也可以是另一个IP,这两个可以绑到家里。那这样就完成了443的数据接收。
青海网友:一般来说,http_://a.com 和https_://a.com会在DNS设置上将记录指向一处IP地址,就是A记录,然后你呢这个在一台机器上从前者跳转到后者也就是网上有的地方叫 http to https 的配置,这个搜索一下很多地方都有,你看它提供的配置文件,大多能看出来是在同一台机器内跳的。

但是楼主现在的问题是他80号口子给废了,他在用户端没办法改这个设置,所以就只好把这个从80到443的跳的动作让其它服务器来完成,他自己家里的部分只负责接收443的数据,因为这个口子没封。

国外VPS绑 http://a.com,301跳转到 https://a.com 还是在同一个IP也就是这台VPS上,因为A记录两个在一起的,但DNS配置里 x.a.com就可以是另一个IP了,b.com 也可以是另一个IP,这两个可以绑到家里。那这样就完成了443的数据接收。
江西网友:还是没有搞懂,有点乱,理一下。
我家里是公网IP,没有80,只有443,路由器用的DDNS动态域名来获取IP,a.com域名做的CNAME记录到这个DDNS域名,搭建了一个站点,绑定了a.com,现在可以通过https://a.com来访问了。

然后怎么实现http://a.com跳转https://a.com呢?

按照你这个做法,a.com域名要取消CNAME记录,用VPS的IP做个A记录,我要把a.com绑定到VPS上面,然后做个301跳转,那这个域名与我家中的设备有什么关联了呢?
青海网友:HSTS
上去很快
缺点是下不了车
你取消preload也没用
山东网友:13楼正解,没有其他的方法
四川网友:CDN的话只是跳转一下呢,不需要多少流量,还是有些东西都会走CDN流量呢?
澳门网友:a.com和www.a.com不是同一个米的,可能我没说清楚,我想说的是同一个二级米,一个字都不能差

未经允许不得转载:美国VPS_搬瓦工CN2 GIA VPS » 无80端口HTTP怎么自动跳转到HTTPS呢?

赞 (0) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏