NGINX
努力一方
爱生活 爱学习
展开
-
解决nginx利用image_filter动态生成缩略图不支持bmp
location ~* /(.+)_(\d+)x(\d+)\.(jpg|gif|png|bmp)$ { set $h $2; set $w $3; if ($h = "0") { rewrite /(.+)_(\d+)x(\d+)\.(jpg|gif|png|bmp)$原创 2014-09-29 10:43:06 · 2551 阅读 · 1 评论 -
ngx_lua写的应用防火墙
根据一个网友的代码改写的一个应用防火墙--[[ * waf for goodID * @author yufei * @time 2016-06-08 * 在nginx.conf的HTTP中加入 * lua_shared_dict limit 50m; * lua_shared_dict iplimit 20m; * lua_shared_dict blockiplimit 5...原创 2018-06-13 17:47:37 · 528 阅读 · 0 评论 -
ngx_lua连接redis
local redis = require("redis")--创建实例 local red = redis:new()--设置超时(毫秒) red:set_timeout(1000)--建立连接 local ip = "127.0.0.1" ngx.say("connect to redis error : ", err) return close_redis(re...原创 2018-06-13 17:39:32 · 2917 阅读 · 2 评论 -
ngx_lua锁功能
突发奇想写了一个类似锁的小玩意auth yufei2017-08-13锁...略...--warting 文件锁local filelock = ngx.shared.filelocklocal req,_=filelock:get(file)--碰到锁就循环,等待,一直到锁释放if req == 1 then while true do ngx...原创 2018-06-13 17:35:38 · 2575 阅读 · 2 评论 -
ngx_lua调用mysql
ngx_lua调用mysql auth yufei2016-07-21ngx_lua调用mysql来源于春哥的开源https://github.com/openresty/lua-resty-mysqlfunction F.check_session() local uid = args["uid"] local session = args["session"] ...原创 2018-06-13 17:13:42 · 415 阅读 · 0 评论 -
ngx_lua连接gearmand
lua连接geraman并丢任务function F.unzip() local cjson = require "cjson" local datas = {} local reqdata={} local gearman = require "gearman" local gm = gearman:new() datas["...原创 2018-06-13 17:07:55 · 250 阅读 · 0 评论 -
ngx_lua连接swoole
ngx_lua有时候要和其他端任务交换,例如和php,python等,常见的是gearman,不过php7以上就不支持gearman了,然后引进了swoole或者beastack等,然后就有了下面的代码,把 --通过ngx_lua给swoole传数据 local swoole=require "luaswoole" --需要安装luaswoole.so local cl...原创 2018-06-13 17:01:36 · 354 阅读 · 0 评论 -
ngx_lua快速读取文件大小和图片宽高属性
我们网站有很多地方需要读取图片的属性于是有了下面的代码和limage.soauth yufei2016-6-5ngx_lua快速获取文件大小和图片属性function F.limage(path,typed) --读取文件大小和图片宽高 reslimage = {} if path then --要先安装https://github.com...原创 2018-06-13 16:52:57 · 3714 阅读 · 0 评论 -
python 分析nginx日志(2)
闲着也是闲着,练练手,分析nginx日志http code码短信告知#!/usr/bin/python# -*- coding: UTF-8 -*-'''auth yufei2016-4-3分析nginx日志,计算200以及500等个数,并且短信通知'''import osimport fileinputimport reimport jsonimport urlli...原创 2018-06-12 11:19:17 · 923 阅读 · 0 评论 -
ngx_lua利用nginx内部跳转提高访问效率
lua里面有时候要去请求外面的链接,试过了几种方式,发现这个方式性能最佳 location /set { default_type 'text/html'; proxy_set_header Host test.yufei.com; proxy_connect_timeout 5s; proxy_send_timeout 3s;原创 2016-04-07 16:21:02 · 3607 阅读 · 0 评论 -
图片水印
Nginx location ~* /([0-9a-z\/]+)/(.*).(jpg|jpeg|png|bmp|webp|JPG)_sy(\.|\_)(.*)$ { lua_code_cache off; default_type text/html; root /filesystem/; set $image_root /files原创 2016-04-07 16:29:32 · 491 阅读 · 0 评论 -
nginx map limit_req_zone
map指令使用ngx_http_map_module模块提供的。默认情况下,nginx有加载这个模块,除非人为的 –without-http_map_module。 ngx_http_map_module模块可以创建变量,这些变量的值与另外的变量值相关联。允许分类或者同时映射多个值到多个不同值并储存到一个变量中,map指令用来创建变量,但是仅在变量被接受的时候执行视图映射操作,对于处理没有引用变量原创 2017-01-24 09:36:43 · 924 阅读 · 0 评论 -
nginx中的if嵌套
nginx的配置中不支持if条件的逻辑与&& 逻辑或|| 运算 ,而且不支持if的嵌套语法,否则会报下面的错误:nginx: [emerg] invalid condition。 我们可以用变量的方式来间接实现。 要实现的语句:if ($arg_unitid = 42012 && $uri ~/thumb/){echo "www.yufei.com";}如果按照这样来配置,就会报nginx原创 2016-03-15 17:46:30 · 8517 阅读 · 0 评论 -
ngx_lua实现重启php
nginx location /reload { default_type text/html; content_by_lua_file reload_php.lua; }lualocal args = ngx.req.get_query_args();local uid = args["uid"]local原创 2016-03-15 17:44:16 · 896 阅读 · 0 评论 -
squid编译安装 web缓存服务器
先安装webp、jpeg、png等库http://www.linuxfromscratch.org/blfs/view/svn/general/libwebp.html先下载libwebp-0.3.0.tar.gztar -zxvf libwebp-0.3.0.tar.gzcd libwebp-0.3.0./configure && make && make installcp /usr/原创 2016-03-15 16:31:42 · 427 阅读 · 0 评论 -
ngx_lua尝试做ip库
根据地区进行跳转 server {location / { lua_code_cache off; charset utf-8; rewrite_by_lua ' local ip = ngx.var.remote_addr local cjson = require "cjson.原创 2016-03-15 17:39:58 · 1340 阅读 · 0 评论 -
Nginx利用rewrite进行文件转移
创建测试战点server { listen 80; server_name localhost; root /www/web/; index index.php index.html index.htm;在网站根目录建立test1 test2 两个目录,test1 为第一块盘挂载的,例如10原创 2016-03-07 09:56:27 · 1241 阅读 · 0 评论 -
TIME_WAIT
之所以起这样一个题目是因为很久以前我曾经写过一篇介绍TIME_WAIT的文章,不过当时基本属于浅尝辄止,并没深入说明问题的来龙去脉,碰巧这段时间反复被别人问到相关的问题,让我觉得有必要全面总结一下,以备不时之需。讨论前大家可以拿手头的服务器摸摸底,记住「ss」比「netstat」快:shell> ss -ant | awk ' NR>1 {++s[$1]} END {f原创 2014-04-24 11:06:00 · 419 阅读 · 0 评论 -
NGINX配置HTTP HSTS协议
Netcraft 公司最近公布了他们检测SSL/TLS网站的研究,并指出只有仅仅5%的用户正确执行了HTTP严格传输安全HSTS。本文介绍nginx如何配置HSTS。什么是HSTS HTTPS(SSL和TLS)确保用户和网站通讯过程中安全,使攻击者难于拦截、修改和假冒。当用户手动输入域名或http://链接,该网站的第一个请求是未加密的,使用普通的http。最安全的网站立即发送回一个重定向使...原创 2018-09-04 11:28:26 · 2770 阅读 · 0 评论