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

來源:互聯網
上載者:User

標籤:style   blog   http   color   ar   os   使用   sp   for   

  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,成功介面:

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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.