ngx_lua_module-1.0.5.0 (LUA编写网页脚本,支持windows和linux)
为什么80%的码农都做不了架构师?>>>
注:最新版本在以下博客发布:
http://blog.csdn.net/ngwsx/
ngx_lua_module是一个nginx http模块,它把lua解析器内嵌到nginx,用来解析并执行lua语言编写的网页后台脚本。
特性:
*) HTML网页中内嵌LUA脚本代码,类似于PHP。
*) 支持非阻塞的数据库操作,目前只支持MYSQL。
更新说明:
*) 新增多个LUA表和接口,包括“nginx.log”、“nginx.req”和“nginx.resp”表。
TODO:
*) API说明文档。
*) 更新实用功能的LUA表和接口实现。
最新版本:
windows:https://github.com/downloads/hehaiqiang/ngwsx/ngx_lua_module-windows-1.0.5.0.rar
linux:https://github.com/downloads/hehaiqiang/ngwsx/ngx_lua_module-linux-1.0.5.0.zip
历史版本:
https://github.com/hehaiqiang/ngwsx/downloads
代码示例:
index.lsp
<%-- This is a lua server pagelocal print = print
local nginx = nginx
local dbd = nginx.dbd
local log = nginx.log
local req = nginx.req
local resp = nginx.resplocal url = "http://www.126.com/"
local title = "126.com"
%>
<html>
<head>
</head>
<body>
<a href="<%=url%>" target="_blank"><%=title%></a>
<hr>
<table border="1">
<%
local conn = dbd.create("libdrizzle")
if conn thenif conn:connect("127.0.0.1", 3306, "root", "123456", "mysql") == nginx.OK thenif conn:query("show databases") == nginx.OK then
%>
<tr><% while conn:column_read() == nginx.OK do %>
<td><%=conn:column_name()%></td><% end %>
</tr><% while conn:row_read() == nginx.OK do %>
<tr>
<%repeatlocal value = conn:field_read()if value == nginx.ERROR or value == nginx.DONE then break end
%>
<td><%=value%></td><% until false %>
</tr>
<%endendendconn:close()conn:destroy()
end
%>
</table>
<hr>
<%
-- test the table "log"
--log.error(log.ALERT, "test alert" .. 1 .. 10)
--log.debug(log.DEBUG_HTTP, "test debug http")
--log.error(log.ERR, "test error")
--log.error(log.EMERG, 1000)-- test the table "req"
print("uri: " .. req.uri .. "<br/>")
print("args: " .. req.args .. "<br/>")
print("host: " .. req.host .. "<br/>")
print("exten: " .. req.exten .. "<br/>")
print("method: " .. req.method .. "<br/>")
if req.referer then print("referer: " .. req.referer .. "<br/>") end
print("user_agent: " .. req.user_agent .. "<br/>")
print("method_name: " .. req.method_name .. "<br/>")
print("request_time: " .. req.request_time .. "ms" .. "<br/>")
print("request_line: " .. req.request_line .. "<br/>")
print("unparsed_uri: " .. req.unparsed_uri .. "<br/>")
print("http_protocol: " .. req.http_protocol .. "<br/>")
local id = req.get["id"] if id then print("id: " .. id .. "<br/>") end
local id = req.get.id if id then print("id: " .. id .. "<br/>") end
local start = req.get["start"] if start then print("start: " .. start .. "<br/>") end
local start = req.get.start if start then print("start: " .. start .. "<br/>") end-- test the table "resp"
--resp.content_type = "text/html"
--resp.content_type = "text/plain"
resp.write("<hr><hr><hr><hr><hr>")
%>
</body>
</html>
转载于:https://my.oschina.net/ngwsx/blog/29070
ngx_lua_module-1.0.5.0 (LUA编写网页脚本,支持windows和linux)相关推荐
- X86/ARM USB2.0/USB3.0转网口,支持Windows、Linux、Android、wince
USB to LAN方案 1.方案介绍 2.准备测试资料 3.linux系统下测试 4.android系统下测试 USB转LAN方案IC有: USB 3.0千兆以太网 ( AX88179) ...
- Android studio 3.0 (CMake)编写cydia脚本hook native
在anndroid studio 2.2 后,用它编写native代码只支持用CMake进行,然后我正在准备用Cydia Substrate 来 hook native代码的时候,发现网上没有用CMa ...
- .NET 5.0预览版6发布:支持Windows ARM64设备
2020年6月25日,微软dotnet团队在博客宣布了第六个 .NET 5.0 的预览版:https://devblogs.microsoft.com/dotnet/announcing-net-5- ...
- linux系统如何开启网页是否压缩,Windows或Linux下Apache开启GZIP压缩 | kTWO-个人博客...
在搭建web服务器的时候有时因为服务器带宽比较小,而网站内容较多,内容加载较慢,此时建议站长们开启Apache的GZIP压缩功能,注意:开启GZIP之后会增加服务器的压力,不过一般服务器还是可以承受的 ...
- windows编写linux脚本,适用于 Windows 和 Linux 的脚本编写工具包
提供脚本编写功能,支持部署高容量 ProLiant 服务器安装 在 Windows 及 Linux 环境中均支持 HPE ProLiant BL/ML/DL/SL.XL 100.300.500.700 ...
- C/C++ 如何调用Lua脚本,Windows以及Linux版本演示
分为linux下和windows平台下: 前置工作,准备好lua安装包. 方法一(linux): 依次使用以下命令 得到安装包: wget http://www.lua.org/ftp/lua-5.2 ...
- Windows下编写的脚本文件无法在Linux上运行的问题
可以看到报错了,无法运行,不存在目录,但是这个目录多出来一个\r 这是因为换行符造成的 只需要使用编辑器修改这里,不再使用CRLF,而是使用LF,就可以解决这个问题
- React Native 0.59.0 发布,使用 React 编写原生应用
React Native 0.59.0 发布了.React Native 使开发者只使用 JavaScript 也能编写原生移动应用. 新版更新亮点: React Hooks React Native ...
- Java黑皮书课后题第6章:*6.17(显示0和1构成的矩阵)编写一个方法,使用下面的方法头显示m*n矩阵。每个元素都是随机产生的0或1。编写一个测试程序,提示用户输入n,显示一个n*n矩阵
6.17(显示0和1构成的矩阵)编写一个方法,使用下面的方法头显示m*n矩阵.每个元素都是随机产生的0或1.编写一个测试程序,提示用户输入n,显示一个n*n矩阵 题目 题目描述与运行示例 破题 代码 ...
最新文章
- 蓝牙耳机测试软件apk_黑鲨蓝牙游戏耳机2解决延迟问题:比AirPods Pro更强
- 各种陷进,盘点那些坑你没商量的JDK方法
- 异星工场服务器直连,Factorio 异星工厂 搭建服务器
- 使用 Java 进行 HL7 编程
- 查看linux网络tcp,linux-查看网络原始数据工具tcpdump
- 获取frame 标签里#documents里面的内容
- VS2017离线安装失败解决无法重新安装问题 catalog问题
- 花游双人、三级跳斩获金银
- Python——format
- ADI电路设计电子书课件分享
- clickhouse修改数据存储目录
- html中文本属性的设置,css 文本属性direction的功能详解说明
- 2022高处安装、维护、拆除考试模拟100题及答案
- Fri Sep 11 22:24:03 CST 2020 WARN: Establishing SSL connection without server‘s identity verificatio
- vue2 Object.definProperty响应式原理(面试题)
- 硅谷首富:拉里 埃里森 1
- 怎样用云服务器搭建一款可以多人联网的传奇手游
- Matlab GUI/APP 浅谈(附计算器源码)
- ubuntu18.04装机
- ObjectAnimation
热门文章
- mysql下载为csv_MySQL 查询结果保存为CSV文件
- 第十五届全国大学生智能车竞赛线下比赛成绩和奖项
- HX711电子秤专用转换芯片读取MCU模块
- Spock测试框架中的注解使用
- python简单计算器异常处理_Python实现的简单计算器
- python卸载opencv_怎么为python安装新版的opencv模块-百度经验
- python第一个公开发行版_Python基础篇【第一篇】:python入门
- eclipse中tomcat启动不了_Spring Boot中Tomcat是怎么启动的
- (52 90) 简答 什么叫计算机网络,计算机网络期末复习试卷.doc
- 创建个人网站所需php书籍,PHP个人网站架设连环讲(三)