node.js C 哪个最有效:通过nginx或节点通过nginx反向代理直接提供静态文件?
我再次阅读并再次阅读nginx非常有效地提供静
我已经使用nginx作为反向代理来为我的node.js webapps 3000< - > 80提供服务.实际上,我使用express.static中间件在节点应用程序中提供我的资产. 我再次阅读并再次阅读nginx非常有效地提供静态文件. 问题是,什么是最好的?像我已经做的那样提供资产,或者直接配置nginx来提供静态文件? 或者几乎一样? 最佳答案 最好的方法是使用nginx服务器为您提供静态文件,并让node.js服务器处理动态内容.它通常是最优化的解决方案,可以减少node.js服务器上的请求数量,该服务器对服务器静态文件的速度比nginx慢,例如: 如果您已经为nodejs app设置了反向代理,那么实现这一目标的配置非常简单. nd nginx配置可能是 root /home/myapp; # Add index.php to the list if you are using PHP index index.html index.htm index.nginx-debian.html; server_name _; location /public/ { alias /home/myapp/public/; } location / { proxy_pass http://IPADRESSOFNODEJSSERVER:8080; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; # First attempt to serve request as file,then # as directory,then fall back to displaying a 404. #try_files $uri $uri/ =404; }每个请求/ public /在url的第一部分都将由nginx处理,其他所有请求都将代理到你的IP地址:IPADRESSOFNODEJSSERVER:nODEJSPORT通常IPADRESSOFNODEJSSERVER是localhost 快递的doc部分告诉http://expressjs.com/en/advanced/best-practice-performance.html#proxy An even better option is to use a reverse proxy to serve static files; 此外,nginx将允许您轻松定义缓存规则,因此对于不更改它的静态资产,也可以使用一行加速您的应用程序. location /public/ { expires 10d; alias /home/myapp/public/; }你可以在网上找到很多比较这两种方法的文章,例如: (编辑:百色站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 生产中的Rails 5动作电缆SSL – WebSocket连接失败:WebSoc
- google-chrome – 将资源解释为文档,但使用mime类型applica
- ruby-on-rails – nginx limit_req速率限制的问题 – 文档澄
- centos – 为Phusion Passenger 3提供SSL支持的Curl开发标题
- linux-用apt-get vs PPA安装Node-有什么区别?
- 如果条件在Nginx conf中的位置块内如何工作?
- ruby-on-rails-为什么SSL重定向不能与force_ssl和Nginx一起
- 在nginx上重定向57,000个URL的最佳方法是什么?
- letsencrypt django webroot
- 外部托管的Nginx代理图像/ javascript
- nginx – 什么是直通负载均衡器?它与代理负载均
- Bash:Nginx版本检查
- ruby-on-rails-Nginx,Unicorn和Rails = 502错误网
- Nginx $request_uri有重复的查询参数
- Nginx无法从docker 1.10.1中的嵌入式DNS获取主机
- 亚马逊网络服务-Aurelia,Docker,Nginx,AWS Elast
- 外部托管的Nginx代理图像/ javascript
- ruby-on-rails – 使用rails,nginx和send_file在
- python-Nginx,uWSGI,Flask应用程序直到服务器重启
- ruby-on-rails – nginx 504网关超时