• .Net Core ABP应用如何在阿里云Linux Docker中开启Https


    .Net Core应用开启Https本身就有很多种方式:
    1.代码配置
    2.环境变量
    3.反向代理

    这里主要记录下阿里云的ECS,加阿里云免费的SSL证书,通过程序代码,如何进行配置。

    首先从阿里云下载证书

    选择IIS下载,得到一个zip文件,里面是证书以及密码

     把证书文件放到打包后的文件夹,比如我的目录

    -publish
    -certs
    --123.pfx
    -DockerFile

    修改Program.cs

    public static IWebHost InitWebHost(string[] args)
            {
                var x509ca = new X509Certificate2(File.ReadAllBytes(@"/app/certs/123.pfx"), "password");
                return WebHost.CreateDefaultBuilder(args)
                    .UseStartup<Startup>()
                    .UseKestrel(option => option.ListenAnyIP(443, config => config.UseHttps(x509ca)))
                    .Build();
            }
    

     注意这里的路径,/app是因为部署在docker下,后面的就是正常程序发布后的目录,记得把password修改为对应密码

    修改Dockerfile,加上一行

    EXPOSE 443

    按正常流程生成镜像并运行起来

    最重要的一步,打开端口。

    进入ecs实例-安全组-配置规则

    手动添加一行,端口写443即可

     

    这时候假如一切正常的话,是可以用https://ip 直接访问你的应用的,但是会提示该服务器使用证书的域名跟你输入的不一致,点击继续访问,仍然可以进去

    而使用域名来访问,则完全没有问题,可以正常进入

  • 相关阅读:
    sql月,年,统计报表sql报表
    Sql server在cmd下的使用
    c# 批量处理数据录入
    vmware安装64位系统“此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态”的问题
    以太坊去中心化淘宝智能合约案例
    智能合约入门
    智能资产构建去中心化的资产管理系统
    以太坊搭建联盟链
    web 前端
    EasyUI+bootsrtap混合前端框架
  • 原文地址:https://www.cnblogs.com/rockcode777/p/14107222.html
Copyright © 2020-2023  润新知