• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
黄洪波写点东西的地方
博客园    首页    新随笔    联系   管理    订阅  订阅
为二级域名注册ssl证书,并强制使用https对http进行跳转

服务器上仍然使用nginx进行代理

1.为二级域名申请ssl证书,如blog.yourdomain.com,见前文。

2.在域名解析服务中,为二级域名添加解析记录

3.nginx默认读取/etc/nginx/conf.d/*.conf

在conf.d下建立二级域名对应的配置文件如vi blog.conf

upstream ech{
server ip:port; #此处最好指定内网ip
}

server{
        listen 80;
        server_name ech.domain.cn; #此处指定子域名访问
        location / {
             proxy_pass http://ech;
        }
}

这样,一个简单的http二级域名就实现了,但是由于在nginx中,对所有http服务都做了重定向至https,所以需要在配置https的配置文件。

 4.配置完成如下:

upstream blog{
server 10.139.xxx.xxx:8090;  #此处指定的云服务器内网ip
}

server{
        listen       80;

        rewrite ^(.*)$  https://$host$1 permanent;
        location / {
             #proxy_pass http://blog;
        }
}

server{
        listen       443 ssl http2 ;


        server_name blog.yourdomain.cn; #此处指定子域名访问


        ssl_certificate "/home/ssl/keys/blog.yourdomain.cn/1_blog.yourdomain.cn_bundle.crt";
        ssl_certificate_key "/home/ssl/keys/blog.yourdomain.cn/2_blog.yourdomain.cn.key";
        ssl_session_cache shared:SSL:1m;
        ssl_session_timeout  10m;
        ssl_ciphers HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers on;

        location / {
             tcp_nodelay on;
             proxy_set_header Host $host;
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_pass http://10.139.xxx.xxx:8090;
        }
}

 

参考:

nginx中不同的http强制跳转https的写法:

Nginx的https配置记录以及http强制跳转到https的方法梳理

posted on 2018-12-13 11:53  红无酒伤  阅读(3360)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3