实战:第二十四章:ip:port改成域名的方式,并将http自动转https

简介: 实战:第二十四章:ip:port改成域名的方式,并将http自动转https

第一步:获取SSL证书

11种免费获取SSL证书的方式:https://www.toolmao.com/1069.html

我选择的是阿里云的SSL免费版




证书我选择的是Nginx下载



第二步:配置内容分发网络

我这里使用的是内容分发网络,对境外的进行加速,境内的需要备案



搜索内容分发网络,进入域名管理,添加域名




这里会提示境外的需要开通服务


需要把区域访问控制打开,除此之外还需要申请一下,ECDN全站加速网络——全球加速资格申请:https://cloud.tencent.com/apply/p/4q956obis68


一般走正常流程要三个工作日,这个时候,你可以提交工单,人工催单,几个小时就可以通过了。



第三步:配置ssl证书

回到域名管理,点击域名,进入详情




这里面的证书配置,就是刚刚阿里云下载的ssl证书,把key文件的内容复制到私钥框里面,把pem文件复制到证书内容里面。然后Https配置下面还有个强制跳转,需要打开



到这一步,等个五分钟左右,你就可以通过https://www.xxx.com访问了,跟你原来的访问地址:http://ip:port效果是一样的。到这一步其实就已经结束了,我已经达成了我想要的效果了:ip:port改成域名的方式,并将http自动转https。


缺点也是有的:

第一:我个人因为域名和申请的ssl证书包括服务器都不是同一家的,域名是腾讯云的,ssl证书是阿里云的,服务器是AWS的,所以看文档比较麻烦。(个人建议可以使用同一家)

第二:开启AWS加速这个是要收费的(很多公司不需要这个功能)

所以为了解决这个收费的问题,我在原有的基础上去掉了CDN全球加速的功能。

第一步:先把加速的关了



第二步:去到DNS解析到我的域名里面把CNAME停用,开启A记录,填写你的ip



这个时候还只是将DNS的解析调整了,服务器上面还没有配置ssl证书,原来的通过内容分发网络,第三方帮助我们配置好了,现在我们用自个的,就需要独立配置。

SSL 证书安装部署:https://cloud.tencent.com/document/product/400/4143

这里我一开始选择的是宝塔linux面板,图形化界面,操作比较方便,后面因为需要安装web服务器并且架构要求服务器尽量别安装多余的插件,改成Nginx安装部署。部署文档:

https://cloud.tencent.com/document/product/400/35244

这里需要注意二个地方:

第一个地方是:443先本地telnet ip 端口 看看能不能用,一开始我认为服务器已经开启了,后面才发现没通,看了半天,浪费了很多时间。

第二个地方是:Nginx版本问题:后面有个配置,Nginx 版本为 nginx/1.15.0 以上请使用 listen 443 ssl 代替 listen 443 和 ssl on。

第三个地方是:之前我是使用了阿里云的ssl证书,腾讯云的域名和DNS解析,管理不方便,所以后面调整了一下,重新弄了腾讯云的ssl证书。



进到Nginx文件夹下面



把这二个上传到服务器上面去

由于我是使用Docker安装配置的Nginx,所以需要映射一些文件

拉取nginx:

docker pull nginx

添加挂载目录:

mkdir -p /home/nginx/{conf,conf.d,html,logs}


注意html里面要有html文件,这个可以从镜像里面复制一份,也可以手动添加一个



我这里是手动添加的:



这些目录下面的文件,我是从docker里面复制出来修改的




主要看nginx.conf:

user  root;
worker_processes  auto;
error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;
events {
    worker_connections  1024;
}
http {
  include       /etc/nginx/mime.types;
  default_type  application/octet-stream;
  log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
          '$status $body_bytes_sent "$http_referer" '
          '"$http_user_agent" "$http_x_forwarded_for"';
  access_log  /var/log/nginx/access.log  main;
  sendfile        on;
  #tcp_nopush     on;
  keepalive_timeout  65;
  #gzip  on;
  include /etc/nginx/conf.d/*.conf;
  server {
    listen 9013;
    #填写绑定证书的域名
    server_name www.你对应的网站域名.top;
    #把http的域名请求转成https
    return 301 https://$host$request_uri;
  }
  server {
    #SSL 访问端口号为 443
    listen 443; 
    ssl on;
    #填写绑定证书的域名
    server_name www.你对应的网站域名.top; 
    #证书文件名称
    ssl_certificate /etc/nginx/1_www.你对应的网站域名.crt; 
    #私钥文件名称
    ssl_certificate_key /etc/nginx/2_www.你对应的网站域名.key; 
    ssl_session_timeout 5m;
    #请按照以下协议配置
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
    #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; 
    ssl_prefer_server_ciphers on;
    location ~ / {
      proxy_pass http://你的ip地址:你的端口;
      #proxy_set_header host $host;
      #proxy_set_header X-Real-IP      $remote_addr;
      #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
      #root /usr/share/nginx/html; 
      #index  index.html index.htm;
    }
  }
}

启动docker:

docker run -p 9003:9012 --name nginx0908  -d \
-p 9013:443 \
-v /usr/local/1_www.网站域名_bundle.crt:/etc/nginx/1_www.网站域名_bundle.crt \
-v /usr/local/2_www.网站域名.key:/etc/nginx/2_www.网站域名.key \
-v /home/nginx/html:/usr/share/nginx/html \
-v /home/nginx/conf/nginx.conf/nginx.conf:/etc/nginx/nginx.conf \
-v /home/nginx/conf/conf.d:/etc/nginx/conf.d/default.conf \
-v /home/nginx/logs:/var/log/nginx \
nginx

我这里是将原来的html页面改成了跳成具体的某个端口,这样就可以通过https://www.xxx.com:你的端口访问了,和你原来的请求http://ip:port效果一样。


此外提供跨域问题解决方案:https://segmentfault.com/a/1190000011145364


相关文章
|
缓存 监控 负载均衡
提升HTTP动态代理IP性能的最佳实践
在现代网络环境中,HTTP动态代理IP的优化配置至关重要。通过选择合适的代理类型(正向/反向代理)、配置缓存、使用负载均衡、加强安全配置(SSL/TLS加密、身份验证)、管理日志、性能监控、限制带宽、定期更新软件和优化用户体验(减少延迟、内容压缩),可以显著提升网络性能、安全性及用户满意度。根据具体需求灵活调整配置,实现最佳效果。
646 64
提升HTTP动态代理IP性能的最佳实践
|
运维 网络协议 安全
为什么经过IPSec隧道后HTTPS会访问不通?一次隧道环境下的实战分析
本文介绍了一个典型的 HTTPS 无法访问问题的排查过程。问题表现为 HTTP 正常而 HTTPS 无法打开,最终发现是由于 MTU 设置不当导致报文被丢弃。HTTPS 因禁止分片,对 MTU 更敏感。解决方案包括调整 MSS 或中间设备干预。
|
数据采集
Haskell编程中,利用HTTP爬虫实现IP抓取
以上就是利用Haskell编写IP抓取爬虫的详细步骤。希望这篇文章的演示对于理解在Haskell这种函数式编程语言中如何实现网络爬虫有所帮助,而其中的网络访问、标签解析和列表处理等技术在许多其他的问题中都有广泛的应用。
283 26
|
负载均衡 监控 安全
优化HTTP代理IP安全稳定性的关键要点
随着科技发展,越来越多企业依赖HTTP代理IP。为确保其安全稳定,建议采取以下措施:选择可靠服务商、使用HTTPS加密、定期更换IP、监控可用性、设置访问控制、使用负载均衡、配置防火墙、定期更新维护及用户教育。这些方法能有效提升代理IP的安全性和稳定性。
572 59
|
数据采集 监控 安全
HTTP代理和IP代理的不同点及代理IP能带来的好处分析
总的来说,无论是HTTP代理还是IP代理,选择哪一种主要还是要看你的需求和使用场景,同时也要为可能的风险做好准备。
329 9
|
编解码 安全 网络安全
指纹浏览器中HTTP代理IP的重要性及使用原因
随着数字化发展,网络安全和隐私保护成为核心需求,指纹浏览器应运而生。它通过客户端信息唯一标识用户身份。搭配HTTP代理IP可增强安全性,具体表现为:1. 保护用户地址;2. 提高信息安全;3. 防止指纹检测;4. 增强网络安全。HTTP代理以其稳定性、安全性,在网络营销等领域发挥重要作用,二者结合为用户提供更强的隐私和安全保护。
580 34
|
负载均衡 安全 应用服务中间件
子域名怎么申请HTTPS证书?
在当今注重网络安全的时代,为子域名申请HTTPS证书(SSL证书)至关重要。首先选择合适的证书类型:单域名证书适合单一子域名;通配符证书适用于同一主域名下的多个子域名;多域名证书则可保护不同主域名下的子域名。接着选择可信的CA机构,如锐安信sslTrus、Sectigo、CFCA或DigiCert等。随后按照申请流程填写信息、生成CSR文件并提交,完成域名及企业信息验证后获取证书并正确安装。根据需求和预算选择最佳方案,提升网站安全性与用户信任度。
|
安全 网络协议 网络安全
只有IP地址没有域名,如何实现HTTPS访问?
在仅有IP地址而无域名的情况下,实现HTTPS访问并非不可能。主要挑战包括证书颁发机构(CA)对IP地址的支持有限及浏览器兼容性问题。解决方案有:1) 搭建私有CA为内部IP地址颁发证书;2) 使用支持IP地址的公共CA服务。选择合适的方案需根据需求权衡。具体步骤包括选择证书类型、生成CSR文件、提交并完成验证、安装SSL证书和配置强制HTTPS访问。确保IP地址稳定,并定期维护安全性。 **申请优惠**:访问JoySSL官网并填写注册码“230907”可优惠申请IP地址证书。
3128 5
|
定位技术 数据安全/隐私保护
合适的HTTP代理IP关键考虑因素与实用建议
随着互联网发展,使用HTTP代理IP的需求日益增加。选择优质HTTP代理IP时需注意:1. 速度和稳定性;2. 用户信息保护;3. 地域性;4. 带宽上限;5. 支持的协议;6. 客户支持;7. 用户评价和信誉;8. 价格和性价比。确保选择可靠的代理服务,满足业务需求。
414 18
|
数据采集 监控 安全
动态HTTP代理IP的使用案例与成功经验分享有哪些?
在信息化时代,网络不可或缺。动态HTTP代理IP广泛应用于网络爬虫、信息安全保护、安全访问站点和市场调研等领域。通过选择合适的代理服务、合理配置请求频率、监控IP状态、使用代理池及结合其他技术,用户可提升工作效率和数据安全性。
363 5