阿里云OSS通过服务器ESC内网流量访问文件(使用免费带宽,不使用收费流量
对象存储OSS服务的基础计费项包括:存储容量,流量,请求次数。此外,OSS还提供存储数据处理服务(如图片处理服务等),会根据您的使用情况单独计量计费,不使用不计费。
总之,就是上传文件的流量不收费,外网下载需要收流量费,内网下载免流量费
这种其实很危险,就是可能有人会黑你,重复大量下载你的文件,导致高额流量费用
好处是使用oss上传下载文件速度都很快
而一般买oss的都会买阿里云服务器ESC,而服务器是可以选择固定带宽的,esc中访问oss是可以走内网的,而内网访问oss是免费的,那么让esc去访问oss并把文件映射出来就可以免流量下载oss文件了。
这么做的缺点是太占用带宽,一般小网站的带宽并不大,所以如果是下载视频类的文件会很卡,影响用户体验,总之看预算来吧,后期可以使用cdn加速优化一下
下面是操作步骤:
一、创建BUCKET
注意创建的bucket区域必须和阿里云服务器的区域相同,只有相同的区域内网才能打通
二、域名解析增加OSS的三级域名
主机记录可以随便起,我因为好辨认起了oss。
这个域名只是为了方便外网访问时nginx转发时使用的,所以不需要将域名绑定oss
所以此时这个域名啥用没用,绑定了nignx转发才能用域名访问文件
三、NGINX配置转发内网
打开bucket 在 概览中可以看到,第一个是外网访问的节点,第二是是内网访问的,记下第二个,在下面配置中要用到
如果是用https:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | 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; }
以前访问文件用的是外网point,如:
https://xxx.oss-cn-zhangjiakou.aliyuncs.com/files/xxx.jpg
现在变成使用你自己的域名就可以:
https://oss.xxx.com/files/xxx.jpg
nginx接收到这个域名后会自动转发内网请求文件并返回,走了内网流量
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?