Nginx に lua-nginx-module モジュールをインストールする方法

Nginx に lua-nginx-module モジュールをインストールする方法

ngx_lua_module は、lua パーサーを nginx に埋め込み、lua 言語で記述された Web バックエンド スクリプトを解析して実行する nginx http モジュールです。

機能は非常に優れているので、Baiduで確認できます。ここでは主に、Nginxでlua-nginx-moduleモジュールをインストールする方法を説明します。

もちろん、これまで Nginx をインストールしたことがなく、インストールが面倒だと感じる場合は、openresty を直接ダウンロードして、すばやく簡単にインストールできます。http://openresty.org/cn/installation.html (Alibaba の大物、Zhang Yichun 氏の作品です。感心します~~~)

1. LuaJIT 2.1 をダウンロードしてインストールします (2.0 と 2.1 の両方がサポートされていますが、公式には 2.1 が推奨されています): http://luajit.org/download.html

/usr/local/src をコピーします
http://luajit.org/download/LuaJIT-2.1.0-beta2.tar.gz をダウンロードしてください
tar zxf LuaJIT-2.1.0-beta2.tar.gz
LuaJIT-2.1.0-beta2 をCDに追加
PREFIX=/usr/local/luajit とする
PREFIX=/usr/local/luajit をインストールします

2. ngx_devel_kit (NDK) モジュールをダウンロードします: https://github.com/simpl/ngx_devel_kit/tags、インストールは必要ありません

/usr/local/src をコピーします
https://github.com/simpl/ngx_devel_kit/archive/v0.2.19.tar.gz をダウンロードしてください
tar -xzvf v0.2.19.tar.gz

3. 最新の lua-nginx-module モジュールをダウンロードします: https://github.com/openresty/lua-nginx-module/tags、インストールは必要ありません

/usr/local/src をコピーします
https://github.com/openresty/lua-nginx-module/archive/v0.10.2.tar.gz を取得します。
tar -xzvf v0.10.2.tar.gz

4.nginx -Vでコンパイルされた設定を表示する

nginx -V

著者の構成は次のとおりです。

次のようにコードをコピーします
--prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-ipv6 --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-openssl=../openssl-1.0.2h --with-pcre=../pcre-8.38 --with-pcre-jit --with-ld-opt=-ljemalloc --with-ld-opt=-Wl,-rpath,/usr/local/luajit/lib --add-module=/usr/local/src/ngx_devel_kit-0.2.19 --add-module=/usr/local/src/lua-nginx-module-0.10.2

5. 以前に nginx がインストールされていた解凍されたディレクトリに入り、再コンパイルしてインストールします (nginx -V で取得した構成の下に、ngx_devel_kit-0.2.19 と ua-nginx-module-0.10.2 のディレクトリを追加します)。最終的な構成は次のようになります。

環境変数の設定

LUAJIT_LIB=/usr/local/luajit/lib をエクスポートします。
LUAJIT_INC=/usr/local/luajit/include/luajit-2.1 をエクスポートします。

次のようにコードをコピーします
./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-ipv6 --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-openssl=../openssl-1.0.2h --with-pcre=../pcre-8.38 --with-pcre-jit --with-ld-opt='-ljemalloc' --with-ld-opt="-Wl,-rpath,/usr/local/luajit/lib" --add-module=/usr/local/src/ngx_devel_kit-0.2.19 --add-module=/usr/local/src/lua-nginx-module-0.10.2

6. コンパイルしてインストールする

-j2 を実行します
インストールする

7. コンパイルが成功したかどうかを確認する

/usr/local/nginx/conf/nginx.conf に次のコードを追加します。

場所 /hello_lua { 
   デフォルトタイプ 'text/plain'; 
   content_by_lua 'ngx.say("hello, lua")'; 
}

nginxを再起動します。

サービス nginx を再起動

10.211.55.3/hello_lua にアクセスすると、「hello, lua」と表示され、インストールが成功したことが示されます。

こんにちは、ルア

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Lua ゲーム開発チュートリアルにおけるタイムゾーンの問題の詳細な説明
  • さまざまなオペレーティングシステムでの Lua 開発環境設定チュートリアル
  • Lua 開発における MVC フレームワークのシンプルなアプリケーション
  • Nginx+Lua開発環境をインストールする
  • Centos7 に Nginx 統合 Lua サンプル コードをインストール
  • Cocos2dx+luaで消しゴム機能を実現
  • Lua における 3 つのループ文の使用法の説明
  • Lua の変数と代入方法
  • Luaコルーチンの紹介と利点と欠点
  • LuvitはNode.jsのようなLuaアプリケーションを作成します

<<:  Vue3 コンポジション API の紹介

>>:  Win2008 R2 mysql 5.5 zip 形式 mysql のインストールと設定

推薦する

mysql5.6 の無効な utf8 設定の問題を解決する

mysql5.6 のグリーン バージョンを解凍すると、my-default.ini ファイルが作成さ...

Docker x509 の安全でないレジストリ問題を解決する

Docker をインストールした後、会社が構築したプライベート サーバー Harbor からプルしよ...

私の CSS フレームワーク - base.css (ブラウザのデフォルト スタイルをリセット)

コードをコピーコードは次のとおりです。 @文字セット "utf-8"; /* @...

MySQL でのストアド プロシージャと関数の作成の詳細な説明

目次1. ストアドプロシージャ1.1. 基本構文1.2 実行権限を指定してストアドプロシージャを作成...

Apache の一般的な仮想ホスト設定方法の分析

1. Apacheサーバーのインストールと設定yum インストール httpd -y systemc...

Vueはvueメタ情報を使用して各ページのタイトルとメタ情報を設定します。

title: vue は vue-meta-info を使用して各ページのタイトルとメタ情報を設定...

jsネイティブ構文プロトタイプ、__proto__、コンストラクタの徹底的な理解

目次1 はじめに2 前提条件2.1 データ型2.2 それが自身のプロパティであるかどうかを判断する ...

MySQL における EXISTS と IN の使用法の比較

1. 使用法: (1)EXISTSの使用 ucsc_project_batch a から、存在する場...

JavaScript で簡単なモグラ叩きゲームを実装する

この記事では、モグラ叩きゲームを実装するためのJavaScriptの具体的なコードを参考までに紹介し...

Dockerコンテナを使用する簡単な例

目次1. イメージをプルする2. イメージを実行する3. コンテナ内でアプリケーションをテストする4...

Javascript クロージャの使用シナリオの原則の詳細

目次1. 終了2. クロージャの使用シナリオ1.タイムアウトを設定する2. コールバック3. 手ぶれ...

Raspberry Pi 4b ubuntu19 サーバーへの docker-ce のインストール手順

Raspberry Pi モデルは 4b、1G RAM です。システムはubuntu19.10サーバ...

MySQLは間違ったパスワードを入力する試行回数を制御します

1. 本番環境でMySQLのデッドロックを監視し、デッドロックの可能性を減らす方法まず、デッドロック...

Iframe の内外のページで JS がどのように動作するかの概要

目次iframeの外側のiframeのコンテンツを取得する方法1方法2 iframe 内の ifra...

Linux コマンドラインのワイルドカードとエスケープ文字の実装

ハードディスクのファイル属性のバッチ表示など、特定の種類のファイルに対してバッチ操作を実行する場合、...