腾讯云存储最佳实践系列二:对象存储中配置自定义域名支持 HTTPS 访问

对象存储中配置自定义域名支持 HTTPS 访问

用户可通过自有域名(自定义域名,如test.cos.com)访问存储桶(Bucket)下的对象(Object)。具体操作指引如下:

· 开启 CDN 加速时配置自定义域名支持 HTTPS 访问

· 关闭 CDN 加速时配置自定义域名支持 HTTPS 访问

开启 CDN 加速

一、绑定自定义域名

将存储桶绑定到您的自有域名,开启 CDN 加速。操作指引参考 域名管理--自定义域名

二、配置 HTTPS 访问

在 CDN 控制台进行 HTTPS 配置,操作指引参考 HTTPS 配置

关闭 CDN 加速

本章节主要以示例的形式介绍在 COS 中通过反向代理配置自定义域名(关闭 CDN 加速)支持 https 访问的操作步骤。本示例将实现不开启 CDN 加速的情况下,直接通过自定义域名https://test.cos.com访问用户 APPID 为 12345678 、所属地域为华南、名称为 testhttps 的存储桶,具体操作步骤如下:

一、绑定自定义域名

将存储桶 testhttps 绑定到域名https://test.cos.com,关闭 CDN 加速。操作指引参考 域名管理--自定义域名

二、为域名配置反向代理

在服务器上为域名https://test.cos.com 配置反向代理。具体配置参考如下(以下 Nginx 配置仅供参考):

server {
    listen        443;
server_name  test.cos.com ;
    ssl on;
    ssl_certificate /usr/local/nginx/conf/server.crt;
    ssl_certificate_key /usr/local/nginx/conf/server.key;
    error_log logs/test.cos.com.error_log;
    access_log logs/test.cos.com.access_log;
    location / {
        root /data/www/;
        proxy_pass  http://testhttps-12345678.cosgz.myqcloud.com; //配置存储桶(Bucket)的默认下载域名 
    }
}

其中server.crt;server.key是您的自有(自定义)域名的 HTTPS 证书。若您的域名还没有 HTTPS 证书 ,可以在 腾讯云 SSL 证书 页面申请。

若暂时没有证书,可以删除以下配置信息,但访问时会出现告警,点击继续即可访问:

    ssl on;
    ssl_certificate /usr/local/nginx/conf/server.crt;
    ssl_certificate_key /usr/local/nginx/conf/server.key;

三、解析域名到服务器

在您域名的 DNS 解析服务商处解析您的域名。若您使用的是腾讯云云解析,请前往 云解析控制台,将域名test.cos.com解析到步骤二中的服务器的 IP 上,指引参考 域名解析

进阶配置

通过浏览器直接打开网页

在配置好自定义域名支持 HTTPS 访问后,就可以通过您的域名下载存储桶(Bucket)中的对象(Object)了。若根据业务需要,想直接在浏览器中访问网页、图片等,可通过静态网站功能实现。操作指引参考 静态网站设置

配置完成后,在 Nginx 配置中增加一行信息,重启 Nginx,刷新浏览器缓存即可。

proxy_set_header Host $http_host;

配置 refer 防盗链

若存储桶(Bucket)是公有的,会有被盗链的风险。用户可以通过防盗链设置,开启 Referer 白名单,防止被恶意盗链。具体操作步骤如下:

  1. COS 控制台 开启防盗链设置功能,选择白名单。操作指引参考 防盗链设置
  2. 在 Nginx 配置中增加一行信息,再重启 Nginx,刷新浏览器缓存。
proxy_set_header   Referer www.test.com;
  1. 设置完成后,直接打开文件会报错:errorcode:-46616;错误提示:未命中 refer 白名单。但是通过代理访问自定义域名,可以正常打开网页。

原创声明,本文系作者授权云+社区-专栏发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

3 条评论
登录 后参与评论

相关文章

来自专栏difcareer的技术笔记

在AOSP中开发自己的APP

在AOSP中的APP的编译和平时开发不一样,需要使用Android.mk来打包。简单参考一下 packages/app/ 下的APP就明白该怎么做了。我已经弄了...

432
来自专栏Hadoop数据仓库

HAWQ技术解析(四) —— 启动停止

        前面已经完成了HAWQ的安装部署,也了解了HAWQ的系统架构与主要组件,下面开始使用它。HAWQ作为Hadoop上的一个服务提供给用户,与其它所...

19610
来自专栏我的博客

谷歌浏览器扩展程序开发

先说为何要学这个,我们公司部署项目的时候有一个选择按钮,每次都得选中才能提交!于是就。。。 直接上代码! 配置文件:manifest.json { ...

2593
来自专栏有困难要上,没有困难创造困难也要上!

使用chroot和supermin5创建安全隔离的环境

1725
来自专栏我的博客

Ubuntu安装redmine

1.环境已经安装LAMP环境(http://www.0377joyous.com/archives/87.html) 2.安装redmine 第一步: a...

2816
来自专栏蓝天

安装Android SDK Manager的“Failed to fetch refused”问题解决方法

安装Android SDK Manager的“Failed to fetch refused”问题解决方法

753
来自专栏Web 开发

Ubuntu10.04下安装MongoDB

因为需要使用第三方的源,所以除了在sources.list上添加对应的源外,还要有增加相应的公钥Key才能正确安装软件。

960
来自专栏北京马哥教育

linux下用tar进行数据备份

豌豆贴心提醒,本文阅读时间7分钟 本机上数据的手工备份 Linux系统上配有功能强大的tar命令,可以灵活地备份数据。 tar最初是为了制作磁带备份而设计的把...

2638
来自专栏别先生

mysql输入密码后闪退怎么办?

第一: 首先需要想到的是mysql的服务可能没开,首先打开mysql的服务 ? 第二: 打开Mysql的命令行输入密码即可 ? 第三: 登录成功 ? 第四: 顺...

2089
来自专栏Jackson0714

配置Meld为git的默认比较工具

1304

扫码关注云+社区