legegecoder
legegecoder
发布于 2021-04-15 / 711 阅读 / 0 评论 / 0 点赞

OSS部署静态资源

写在前面

静态资源一般都可以放在服务器上,再Nginx反向代理一下就可以了,不过公司的前端静态资源都会放在OSS(阿里)里,所以也想自己实现一下。ps:可能我的配置方法不是最优

优点

  • 不占用服务器的带宽和磁盘

缺点

  • OSS要另外花钱(滑稽)

其实OSS也不贵,一年也就几十块钱,而且我买的服务器只有系统盘,虽然静态资源不大,但是也可以自己实现一下动静分离。无论技术怎么选择,能提升自己就是最好的选择。

前提条件

远程登录工具(windows:Xshell,Mac:FinalShell)
阿里OSS
静态资源(html,css,js)

OSS配置

OSS权限配置

oss_acl
需要配置为公共读,不能配置为私有。

OSS绑定域名

oss cdn

OSS配置CDN(可选)

控制台搜索CDN,源站配置选择静态资源所在的Bucket
cdn

上传静态资源到OSS

阿里云OSS上传文件这次我们就用阿里的控制台,点击上传文件夹把静态资源上传到OSS中。

static

选中自己的域名

oss http

OSS配置默认静态界面

ossindex

nginx配置

server {
  listen 443 ssl;
  server_name  www.domian.cn; #监听的域名
  charset utf-8;
  
  ssl_certificate cert/cert-file-name.pem;  #需要将cert-file-name.pem替换成已上传的证书文件的名称。
  ssl_certificate_key cert/cert-file-name.key; #需要将cert-file-name.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; #表示使用的TLS协议的类型。
  ssl_prefer_server_ciphers on;client_max_body_size 1024m;

#  不想把静态资源放在OSS里的,直接放在Nginx存放静态文件的目录下
# location /{
#     root /usr/share/nginx/html/home;
#     index  index.html  index.htm;
#     }

 # 建议从复制你的目录,复制index.html的地址再去掉后缀 
 location / {
    proxy_pass https://yourdomian.cn/html/home/;
  }
  
}

评论