基于nginx和lua的防盗链系统
A Prevent Hotlinking System based on nginx and lua
将代码放在位于nginx根目录下的lua/ds_hotlink/下
Put the code into the directory lua/ds_hotlink which is located in the root directory of the nginx
在nginx.conf的http段中添加如下配置:
Add the config below to the http seg in nginx.conf:
lua_package_path "/u/nginx/lua/ds_hotlink/?.lua;;"; init_by_lua_file lua/ds_hotlink/init.lua;
配置如下location用于获取访问key
Add the config below to /get_key location for geting access key
location = /get_key { allow 10.0.2.2; deny all; content_by_lua_file lua/ds_hotlink/get_key.lua; }
在需要防盗链的location下配置如下
Add the config below to a location which need to prevent hotlinking
access_by_lua_file lua/ds_hotlink/refer.lua;
或者配置如下
Alternative config below
access_by_lua_file lua/ds_hotlink/accesskey.lua;
防盗链相关的配置在config.lua中,需要保证nginx的worker process对日志文件有读写权限
You can config Prevent Hotlinking System with the file config.lua,and you must make the worker process of nginx have the read and write permission to the log file
本文主要介绍nginx配合lua构建websocket 例子。 下载lua-resty-websocket git clone https://github.com/agentzh/lua-resty-websocket.git nginx conf 配置 server { listen 38000; server_name localhost;
Lua是一个小巧的脚本语言,其主要的设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能,它是由标准的C语言编写而成,几乎在所有操作系统和平台上都可以编译,运行,Lua没有提供强大的库,这是由它定位决定的,所以Lua不适合作为开发独立应用程序的语言 先安装nginx 1、挂载镜像 [root@kvm122102 Nginx]# mount /dev/cdrom /mnt/ 2、安装
http://developer.51cto.com/art/201207/350070.htm redis: http://www.imop.us/v/MTkxOA==.html
lua_package_path "/usr/local/share/luajit-2.0.2/jit?.lua;;"; lua_shared_dict devicedb 45m; location /query { default_type 'text/plain'; content_by_lua '
写C代码时,用惯了doxygen,现在写lua代码,也特别地希望用doxygen,上官网看了看,真发现有lua的filter git clone https://github.com/alecchen/doxygen-lua.git 这个源即可获取,不过貌似人家没有管Windows什么事,perl脚本,所有东西都是Linux的 好在我们有cygwin,在cygwin中安装上perl和doxygen
1)install luajit //也可以到此下载http://luajit.org/download.html wget http://luajit.org/download/LuaJIT-2.0.0.tar.gz tar zxf LuaJIT-2.0.0.tar.gz cd LuaJIT-2.0.0 make make install export LUAJIT_LIB=/usr/loca
这几个月里,我们逐步把Lua集成到Mixlr的前端Nginx配置中。 Lua是一个可以嵌入到Nginx配置文件中的动态脚本语言,从而可以在Nginx请求处理的任何阶段执行各种Lua代码。刚开始我们只是用Lua 把请求路由到后端服务器,但是它对我们架构的作用超出了我们的预期。下面就讲讲我们所做的工作。 强制搜索引擎只索引mixlr.com Google把子域名当作完全独立的网站,我们不希望爬虫抓取子
https://www.nginx.com/resources/wiki/modules/lua/#content-by-lua-file lua文件第一行加上 ngx.header.content_type = “text/html”
火云邪神语录:天下武功,无坚不破,唯快不破!Nginx的看家本领就是速度,Lua的拿手好戏亦是速度,这两者的结合在速度上无疑有基因上的优势。 最先将Nginx,Lua组合到一起的是OpenResty,它有一个ngx_lua模块,将Lua嵌入到了Nginx里面;随后Tengine也包含了ngx_lua模块。至于二者的区别:OpenResty是Nginx的Bundle;而Tengine则是Nginx的
关于nginx+lua的Tips 主要参考:https://github.com/openresty/lua-nginx-module,不完全翻译 一、关于nginx lua ⭐️require和dofile这种调用ngx.location.capture*,ngx.exec,ngx.exit等类似 requiring yielding in the top-level scope的funct
nginx变量使用方法详解(8) nil、null与ngx.null 发现一个nginx LUA开发Web App的框架 nginx是个好东西, nginx的openrtsy发行版本更是个好东西。 今天又发现个好东西 :Moochine MOOCHINE - 一个简单的轻量级的web framework, 基于ngx_OpenResty(ngx_lua,ttp://openre
1.nginx可以通过redis2-nginx-module模块和redis缓存服务建立连接 2.nginx+lua+redis构建高并发应用 ngx_lua将lua嵌入到nginx,让nginx执行lua脚本,高并发,非阻塞的处理各种请求。 url请求nginx服务器,然后lua查询redis,返回json数据。 3.lua_nginx_module 可在 Nginx 中嵌入 Lua 语言,让
这几个月里,我们逐步把Lua集成到Mixlr的前端Nginx配置中。 Lua是一个可以嵌入到Nginx配置文件中的动态脚本语言,从而可以在Nginx请求处理的任何阶段执行各种Lua代码。刚开始我们只是用Lua 把请求路由到后端服务器,但是它对我们架构的作用超出了我们的预期。下面就讲讲我们所做的工作。 强制搜索引擎只索引mixlr.com Google把子域名当作完全独立的网站,我们不希望爬虫抓取子
nginx需安装lua模块,可使用集成环境OpenResty。OpenResty开源框架,它是一款基于 NGINX 和 LuaJIT 的 Web 平台。 linux安装参考 http://openresty.org/cn/getting-started.html location /aa { access_by_lua ' local a
location ~* \.(gif|jpg|png|swf|flv)$ { root html valid_referers none blocked *.uncwd.com; if ($invalid_referer) { rewrite ^/ www.wenjiangs.com #return 404; } } 前面的root可以不要如果你在se
nginx-lua-ds-loadbalancer 是一个HTTP负载均衡器,基于liseen/lua-resty-http A http loadbalancer which is based on liseen/lua-resty-http 将代码放在位于nginx根目录下的lua/ds_lb/下 Put the code into the directory lua/ds_lb which
nginx-lua-ds-proxy 是一个HTTP代理服务器,基于 liseen/lua-resty-http 将代码放在位于nginx根目录下的lua/ds_proxy/下 在nginx.conf的http段中添加如下配置: lua_package_path "/u/nginx/lua/ds_proxy/?.lua;;";lua_need_request_body on;init_by_lua
nginx-lua-ds-waf 是基于 Nginx 和 Lua 的 WAF 系统 将代码放在位于nginx根目录下的lua/ds_waf/下 在nginx.conf的http段中添加如下配置: lua_package_path "/u/nginx/lua/ds_waf/?.lua;;";init_by_lua_file lua/ds_waf/init.lua;access_by_lua_file
1. 什么是盗链? 百度百科的解释如下: 盗链是指服务提供商自己不提供服务的内容,通过技术手段绕过其它有利益的最终用户界面(如广告),直接在自己的网站上向最终用户提供其它服务提供商的服务内容,骗取最终用户的浏览和点击率。受益者不提供资源或提供很少的资源,而真正的服务提供商却得不到任何的收益。 盗链在如今的互联网世界无处不在,盗图,盗视频、盗文章等等,都是通过获取正规网站的图片、视频、文章等的 ur
本机测试项目,用php_study建立的两个站点A和B, A: http://a:8888 B: http://b:9999 需要在A上配置防盗链,不让B站点引用A站的图片, 如何配置? 这样配置不管用 求解