nginx 的提升多个小文件访问的性能模块
阿里开源的第三方模块下载地址:https://github.com/alibaba/nginx-http-concat
下载模块
git clone https://github.com/alibaba/nginx-http-concat.git
编译进nginx里
cd nginx-1.15.9/
使用--add-module=参数指定第三方模块路径
./configure --prefix=/data/web --sbin-path=/usr/bin --user=nginx --group=nginx --with-http_stub_status_module --with-http_auth_request_module --add-module=/root/nginx-http-concat
make 主
cp ~/nginx-1.15.9/objs/nginx /usr/bin/ 把可执行文件复制指定目录,备份之前可执行文件
配置
server {
server_name concat.com;
error_log logs/concat_error.log debug;
concat on; #是否启用
root html;
location /concat {
concat_max_files 30; # 定义可在给定上下文中连接的最大文件数。请注意给定的URI不能大于平台的页面大小。在Linux上,您可以获得页面大小发布:
concat_types text/plain text/css text/html;#定义可在给定上下文中连接的MIME类型
concat_unique on;#定义是否只能连接给定MIME类型的文件,或者是否可合并多类型。例如,如果off 在给定的上下文中设置为then,则可以连接Javascript和CSS文件。请注意,默认值为on,意味着只有具有相同MIME类型的文件在给定上下文中连接。所以,如果你有CSS和JS,你不能做这样的事情:为了做到这一点,你必须设置concat_unique off。这适用于您决定通过添加相应的MIME类型来连接的任何其他类型的文件concat_types,
concat_delimiter ':::'; #定义两个文件之间的分隔符。如果配置为concat_delimiter“\ n”,则当访问http://example.com/??1.js,2.js时,将在1.js和2.js之间插入'\ n'。
concat_ignore_file_error on;#是否忽略404和403。
}
}
网页
[root@python html]# mkdir concat
[root@python html]# cd concat/
[root@python concat]# echo "1.txt" > 1.txt
[root@python concat]# echo "2.txt" > 2.txt
[root@python concat]# echo "2.css" > 2.css
[root@python concat]# echo "1.css" > 1.css
测试
[root@python vhast]# curl www.concat.com/concat/??1.css,2.txt,2.css,1.txt
1.css
:::2.txt
:::2.css
:::1.txt
[root@python vhast]# curl www.concat.com/concat/??1.css,2.txt,1.txt
1.css
:::2.txt
:::1.txt
[root@python vhast]# curl www.concat.com/concat/??1.txt,2.txt
1.txt
:::2.txt
nginx 的提升多个小文件访问的性能模块的更多相关文章
- LOSF海量小文件问题解决思路及开源库
"+++++++++++++++ LOSF 海量小文件存储和优化方案 +++++++++++++++++++++++++++++++++++++++++++++"一.问题产生原因以 ...
- 为什么cp很多小文件非常慢——对cp和rm命令的一些思考
linux中的文件复制命令——CP linux中文件剪切的命令——MV 1.问题背景 今天在某个目的动作过程中想把一个文件夹下的文件复制到另外的一个文件夹下 cp -fr ./dir1/ /d ...
- nginx报错:403 Forbidden 并且访问首页index.php是下载文件的状态
nginx报错:403 Forbidden 并且访问首页index.php是下载文件的状态,不能正常解析php 系统有其他两个站访问是正常的 看日志没有看到明显的错误 搜索了下: 答案如下: php的 ...
- Ubuntu Nginx下配置网站ssl实现https访问
最近在看 HTTP权威指南 看到介绍了HTTPS的ssl,自己就动手测试了下,将步骤记录下 HTTPS简介 什么是HTTPS?百科是这样解释的.HTTPS(全称:Hyper Text Trans ...
- java利用“映射文件访问”(MapperByteBuffer)处理文件与单纯利用Buffer来处理文件的快慢比较
处理文件是java经常使用的操作,在对一个“大文件”(比如超过64M)进行操作时一点点速度的提高都会带来性能的巨大提升.然而我们经常使用的BufferxxStream,来直接处理大文件时,往往力不从心 ...
- Nginx集群之WCF大文件上传及下载(支持6G传输)
目录 1 大概思路... 1 2 Nginx集群之WCF大文件上传及下载... 1 3 BasicHttpBinding相关配置解析... 2 4 编写 ...
- 微信小程序访问豆瓣api403问题解决方发法
微信小程序访问豆瓣api403问题解决方法一览:通过豆瓣api可以获取很多电影.书籍等的数据信息.昨晚上用微信小程序请求豆瓣api,竟然被豆瓣拒绝了.(豆瓣设置了小程序的访问权限):下面就跟着小编一起 ...
- Linux文件访问流程及磁盘inode和block总结
Linux文件访问流程 inode是文件的唯一标识,文件名和inode的对应关系存放在上一级目录的block中:inode里有指向文件block的指针和文件的属性,从而通过block获得文件数据. 磁 ...
- Nginx(四):http服务器静态文件查找的实现
上一篇nginx的文章中,我们理解了整个http正向代理的运行流程原理,主要就是事件机制接入,header解析,body解析,然后遍历各种checker,直到处理成功为止. 我们以访问一个普通文件为例 ...
随机推荐
- ubuntu的dpkg命令安装和卸载软件
实际使用中,可以先到网上下载deb文件,然后用dpkg命令来安装. sudo dpkg -l | grep 360 #查看包含360的软件sudo dpkg -i browser360-cn-stab ...
- Go_file操作
1. FileInfo package main import ( "os" "fmt" ) func main() { /* FileInfo:文件信息 in ...
- C 语言实例 - 判断三边能否构成三角形
原理: 要判断输入的三条边能否够成三角形,只需满足条件两边之和大于第三边即可. #include<stdio.h> int main() { printf("请输入三个边长:\n ...
- ci/cd部署时遇到的一个问题
今天在部署项目的时候报了一个错Error response from daemon: endpoint with name xxx already exists in networ ...
- ENS中文文档系列之三 [ ENS常见问题 ]
原文地址:https://ensuser.com/docs/frequently-asked-questions.html更多最新信息,请前往 ENS 中文服务站点:ENSUser 关于 ENS 注册 ...
- drat笔记
安装dart https://www.dartcn.com/install http://www.cndartlang.com/920.html 所有执行的方法都在main里面. main() {} ...
- c# Linq List<T>去除其中重复的项
//要去重的 list<T> listTest: var resultlist= listTest.GroupBy(p =>p.Id).Select(g => g.First( ...
- B站上线互动视频背后,是一场谁都输不起的未来之战
毋庸置疑的是,视频网站的竞争已愈发激烈.而它们的竞争体现在多个维度,比如买视频会员赠送购物网站会员.依靠各自的社交体系不断尝试打破圈层瓶颈等.当然,最直接的竞争还是体现在内容层面.购买独家版权.制作原 ...
- LA 3708 墓地雕塑(模拟)
题目链接:https://vjudge.net/problem/UVALive-3708 这道题的思路也是比较难想. 首先根据上一题(Uva 11300)可知,要想让移动距离最短,那么至少要使一个雕塑 ...
- 传奇衣服、翅膀、武器、怪物、NPC等外观代码计算方法与公式
详细介绍humX.wil weaponX.wil itemsX.wil dnitemsX.wil stateitemX.wil monX.wil代码计算方法 以下计算方法适用于HERO引擎和3K ...