利用Nginx或koa
Posted 李建明180
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用Nginx或koa相关的知识,希望对你有一定的参考价值。
最近在做上传的图片的需求,思考上传之后的图片怎么访问的问题,因为后端是Node,一开始尝试写一个专门的接口通过传入图片的path来查找,试了一下感觉并不理想,因为要为每种类型的文件设置Content-Type
,不然浏览器会直接下载改文件。
koa-static方案
后端框架因为使用的是koa,采用koa-static
实现如下:
import staticServer from 'koa-static';
app.use(staticServer(__dirname, '/upload'));
假如upload
目录中有logo.png
文件,就可以通过URLhttp://cms.thinktxt.com/logo.png
访问到。
nginx方案
Nginx天生擅长托管静态资源,最终选用的方案是通过Nginx托管,这样还可以解放Node的服务压力,配置如下:
server {
listen 80;
server_name cms.thinktxt.com;
location / {
大专栏 利用Nginx或koalass="kn">proxy_pass http://127.0.0.1:8080;
client_max_body_size 1000m;
}
location /images {
root e:/WorkSpace/Thinktxt-CMS/upload/;
}
}
假如upload
目录下的images
目录中有logo.png
文件,就可以通过URLhttp://cms.thinktxt.com/images/logo.png
访问到。
如果别的别的系统想要访问该站点目录下的资源,也可以做转发:
server {
listen 80;
server_name static.thinktxt.com;
location /images {
proxy_pass http://cms.thinktxt.com/images;
}
}
相关标签
以上是关于利用Nginx或koa的主要内容,如果未能解决你的问题,请参考以下文章
基于socket.io +koa2 +天行机器人 实现简单人机实时通讯(nginx处理socket.io https代理问题)
Docker + node(koa) + nginx + mysql 线上环境部署