对象存储OSS服务的基础计费项包括:存储容量,流量,请求次数。 此外,OSS还提供存储数据处理服务(如图片处理服务等),会根据您的使用情况单独计量计费,不使用不计费。
总之,就是上传文件的流量不收费,外网下载需要收流量费,内网下载免流量费
这种其实很危险,就是可能有人会黑你,重复大量下载你的文件,导致高额流量费用
好处是使用oss上传下载文件速度都很快
而一般买oss的都会买阿里云服务器ESC,而服务器是可以选择固定带宽的,esc中访问oss是可以走内网的,而内网访问oss是免费的,那么让esc去访问oss并把文件映射出来就可以免流量下载oss文件了。
这么做的缺点是太占用带宽,一般小网站的带宽并不大,所以如果是下载视频类的文件会很卡,影响用户体验,总之看预算来吧,后期可以使用cdn加速优化一下
下面是操作步骤:
一、创建bucket
注意创建的bucket区域必须和阿里云服务器的区域相同,只有相同的区域内网才能打通
二、域名解析增加oss的三级域名
主机记录可以随便起,我因为好辨认起了oss。
这个域名只是为了方便外网访问时nginx转发时使用的,所以不需要将域名绑定oss
所以此时这个域名啥用没用,绑定了nignx转发才能用域名访问文件
三、nginx配置转发内网
打开bucket 在 概览中可以看到,第一个是外网访问的节点,第二是是内网访问的,记下第二个,在下面配置中要用到
如果是用https:
server {
listen 443 ssl;
server_name oss.xxx.com; #你添加记录的域名
ssl_certificate cert/oss.xxx.com.pem; #一些证书
ssl_certificate_key cert/oss.xxx.com.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #使用此加密套件。
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #使用该协议进行配置。
ssl_prefer_server_ciphers on;
location / {
proxy_pass https://xxx.oss-cn-zhangjiakou-internal.aliyuncs.com; #转发的oss内网地址
}
access_log /www/wwwlogs/access.log;
}
server {
listen 80; #监听80端口
server_name www.xxx.com oss.xxx.com; #监听的域名 多个域名空格隔开
rewrite ^(.*)$ https://$host$1 permanent;
}
复制代码
如果是http,简单写写就可以:
server {
listen 80;
server_name oss.xxx.com; #你添加记录的域名
location / {
proxy_pass https://xxx.oss-cn-zhangjiakou-internal.aliyuncs.com; #转发的oss内网地址
}
access_log /www/wwwlogs/access.log;
}
复制代码