【Lua】linux下lua+mod_lwt环境搭建

  Lua 是一个小巧的脚本语言。它具有轻量级、可扩展等优势。它可以作为一个强大、轻量的脚本语言,供任何需要的程序使用。

  LWT (Lua Web Tools) 可让你使用 Lua 开发 Web 应用,并可直接在 Apache 上运行。LWT 的核心功能通过一个 Apache 的模块(mod_lwt)来提供。另外 LWT 提供可选的 Lua 模块用来访问数据库和缓存。

  现在用lua + LWT来搭建后台web环境。



  安装lua:

    在linux中,有两种方法可以安装lua。

    第一种:系统为Ubunut、Debian等支持apt-get命令的可以用这个方法。

      sudo apt-get install lua5.1

    第二种:

      1、先去Lua的官网(http://www.lua.org/ftp/)下载最新发布包,我选择的是 lua-5.1.4.tar.gz

      2、使用命令tar -xzvf  lua-5.1.4.tar.gz

      3、cd lua-5.1.4, 然后执行sudo make,结束后sudo make install,如果中途没有出错,那就成功了。



  安装mod_lwt:

    在安装mod_lwt之前,必须保证安装了Apache、lua和liblua.so。

    首先下载mod_lwt项目的安装包lwt-0.9.1.tar.gz ,解压。

    cd lwt-0.9.1

    cd mod_lwt

    make

    make install

    安装过程会在/usr/local/share/lua/5.1/这个目录下生成httpd.lua以及httpd/wsapi.lua两个文件

    然后修改Apache的配置文件httpd.conf  

    vim /etc/apache2/httpd.conf

    在里面添加上:

      AddHandler lwt .lua

      AddHandler lwt-wsapi .ws

      LoadModule lwt_module   /use/lib/apache2/mod_lwt.so

    保存,然后在Apache配置目录调用命令启动模块

    a2enmod lwt

    重启Apache
    apache2ctl restart

    在重启Apache时,出现了问题:

  原因是80端口被占用,用netstat -apn | grep 80命令查看80端口使用情况:

  端口被lighttpd占用了,lighttpd是一个轻量级的web服务器,这里并不需要他,直接killall -9 lighttpd

  再次重启Apache:

  重启成功:

  现在可以用官网的测试脚本test.lua来试一试: 

 1 require "httpd"
 2 local request_fields = { "uri", "protocol", "hostname", "path", "path_info", "args",
 3                 "method", "filename", "filedir", "user", "auth_type",
 4                 "local_ip", "remote_ip" }
 5 request, args = ...
 6 httpd.set_content_type("text/plain; charset=utf8")
 7 httpd.write("Hello Lua World\r\n")
 8 for _, key in ipairs(request_fields) do
 9         httpd.write(key .." -> " .. (request[key] or "(not set)") .. "\r\n")
10 end

  用浏览器访问test.lua,成功界面:

时间: 2024-10-05 05:00:39

【Lua】linux下lua+mod_lwt环境搭建的相关文章

Linux下的ssh环境搭建与管理

Linux下的ssh环境搭建与管理 实验环境 1:网桥模式 2:安装好vmtoos 3:安装好yum 4:安装好ssh相关软件包 5:服务端:xuegod-63   IP:192.168.1.63 客户端:xuegod-64   IP:192.168.1.64 客户端普通用户:ceshi  密码:123456 6:安装好扫描软件rpm -ivh/mnt/Packages/nmap-5.21-4.el6.x86_64.rpm 实验目标 1:SSHD服务介绍 2:SSHD服务安装配置 3:两Linu

Linux下PHP+Nginx环境搭建

PHP+Nginx环境搭建 作者:王宇阳( Mirror )^_^ 参考文章: ? Nginx+PHP+MySQL安装参考 ? PHP源码安装经验 ? PHP源码环境搭建过程中常见问题 CentOS环境 配置CentOS-7网络: CentOS(最小安装)默认是不打开网络的 启动网络 vi打开:/etc/sysconfig/network-scripts/ifcfg-ens33 文件 将 "ONBOOT:no"属性修改为:"ONBOOT:yes" 重启网络服务 #

Linux下R语言环境搭建

R是用于统计分析.绘图的语言和操作环境.R是属于GNU系统的一个自由.免费.源代码开放的软件,他是一个用于统计计算和统计制图的优秀工具. 环境搭建: 1.安装proj [[email protected] gis]#wget http://download.osgeo.org/proj/proj-4.9.1.tar.gz [[email protected] gis]# tar -zxvf proj-4.9.1.tar.gz [[email protected] proj-4.9.1]# cd

Linux下golang开发环境搭建

对于golang开发来说,Windows下可以用vscode或者liteide都不错,但是Linux下的开发也就只有vim了,所以怎么搞笑的利用vim进行golang开发呢? 参考官方推荐的一个插件:vim-go 安装步骤: vim-go的安装需要使用vim插件管理工具,我使用的是VundleVim,具体的安装操作按照该工具的readme来操作即可. 当vim-go安装完成之后,按照vim-go的readme里面的介绍,需要用到命令:GoInstallBinaries来安装需要用的工具,但是这里

Linux下PHP开发环境搭建

平时写程序时都是在服务器已经搭建好的PHP环境进行的.出于对未知知识的好奇,这几天在自己的机器上搭建起了PHP开发环境.本想轻松顺利的看到phpinfo显示在我的页面上,没想到安装环境时一路的error,不停的 google折腾了半天终于看到了phpinfo.在此把遇到的问题总结一下,给大家提供一个参考.我的OS是ubuntu 9.10,得益于apt-get强大的功能参考了一下这篇文章http://wiki.ubuntu.org.cn/index.php?title=Apache&variant

linux下的LNMP环境搭建

首先了解一下LNMP这四个字母的意思:可以把四个字母分开来看:L:linux的操作系统:N:Nginx网站服务:M:mysql数据库:P:php解析环境. 本次主要能学会Nginx网站服务的基本构建: 学会构建Nginx主机:(这个和apache的网站服务的虚拟web主机类似,本次不做过多讲解) 学会部署LNMP网站服务平台 今天我准备了天空网络电影系统.所以简单的把这个点播系统部署上(http://www.skyuc.com/) 一:Nginx服务基础         Nginx的优点:(1)

Linux下C# 开发环境搭建

支持开源,拥抱Linux. C#/.NET都是跨平台的,虽是微软的一套东西,但Linux上也是可以跑的,就是个习惯问题. 我们知道mono是一个跨平台的.开源的 .NET 开发框架.它是Novell公司基于SUSE Linux操作系统开发的. ok,开始介绍安装: 1.安装C#编译环境 sudo apt-get install mono-devel ,输入密码,然后输入Y 2.查看mono版本 mono --version 3.查看gmcs版本 gmcs --version 4.编译程序 gmc

linux下Apache+Svn环境搭建(五)

在搭建之前先准备好如下包,建议去apache官网去下载:http://httpd.apache.org/ apr-1.4.6.tar.gzapr-util-1.4.1.tar.gzhttpd-2.2.16.tar.gzopenssl-1.0.0a.tar.gzsubversion-1.6.1.tar.gzsubversion-deps-1.6.1.tar.gzneon-0.30.1.tar.gzexpat-2.1.1.tar.bz2 以上所有的压缩包下载下来之后,建议统一放在一个目录,例如我是放

Linux下ARM开发环境搭建

本人的系统环境:Linux ubuntu 3.8.0-35-generic #50-Ubuntu SMP Tue Dec 3 01:25:33 UTC 2013 i686 i686 i686 GNU/Linux 1.安装skyeye sudo apt-get install skyeye skyeye -h可以看到skyeye的版本号为1.2.5 也可以到http://sourceforge.jp/projects/sfnet_skyeye/releases/下载skyeye源码,由于本人系统问

Linux下OpenCV的环境搭建

OpenCV is the most popular and advanced code library for Computer Vision related applications today, spanning from many very basic tasks (capture and pre-processing of image data) to high-level algorithms (feature extraction, motion tracking, machine