問題タブ [mod-lua]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
587 参照

apache - ApacheでLuaをhtmlに埋め込む

アパッチにはmod_lua. php に似た like タグを持つ html ページを処理する方法はありますか?

そうでない場合、他の方法はありますか?(見mod_pluaたことはありますが、あまり効果がないようです)。

0 投票する
2 に答える
480 参照

apache - mod_luaからpostgresqlに接続できません

Apache 2.4.4(mod_luaモジュールが付属しています)をダウンロードしてインストールしました。次のように有効にしました。

--httpd.conf--

簡単なスクリプトを実行すると、機能します。

--htdocs / hello.lua--

ローカルのpgデータベースに接続したいのですが、動作しません。

エラーメッセージは一切ありません。それ以上の構成がありませんか?

ご入力いただきありがとうございます。

0 投票する
1 に答える
408 参照

apache - サードパーティのライブラリは mod_lua ではなく lua で動作します

私はこれを読みまし

  1. 提案された実用的なソリューションはありません
  2. WindowsではなくLinuxを実行しています
  3. 自作のまとめです
  4. ランニングhttpd-2.4.9

これが私がこれまでに試したことですが、成功しませんでした:

  • この提案に従ってください「サードパーティのluaモジュールをどこに配置しますか?」
  • 私のvhost confにLuaのPATHのすべての可能性を追加しようとしました:

    /li>
  • lfs.sohttpフォルダーに入れようとしました:/local/install/httpd-2.4.9/modules/lua

  • lfs.so私のlua共有に入れようとしました/usr/local/share/lua/5.2
  • lfs.soより一般的な共有を入れようとしました/usr/local/share
  • lfs.so共有httpモジュールを入れようとしました/opt/httpd-2.4.9/modules/

そして今、私はまだ有効な解決策を見つけていません。何か案が?ところで、情報を書き込むために使用できるので、lua が使用しているand/orr:notice()をダンプする方法はありますか?pathcpath

私のファイルでは、ファイルにディレクティブがrequire "bb"あり、 と同じパスにある場合、機能します。Web サーバーを実行して再起動しようとすると、ディレクティブが で機能しなくなります。これは、環境変数が Apache に何らかの影響を与えることを意味します。aa.luabb.luaaa.luaexport LUA_PATH=require "bb"aa.luaLUA_PATHLUA_CPATHmod_lua

今、私は別のことを試しました:動的ライブラリです。私はこれをします:

これは、正常に open +fcntlからの関数を取得しようとしたことを意味しposix_c.soます。

このコードを lua ファイルに追加しようとすると、次のmod_luaようになります。

私はこの出力を得ました:

これを読んだ後、何が問題なのかを推測しました。5.2.1 バージョンをインストールmod_luaし、5.1 でコンパイルしました。luaposixそこで、5.2.1 と 5.2 のすべてのリンクを削除し、 libを再コンパイルしました。これはfunction: 0x220bce0,nil、ライブラリが正常に開かれたことを意味します。

何が起こっているのか分かりますか?

0 投票する
1 に答える
135 参照

apache - Apache で mod_lua を使用する場合、mod_rewrite の QSA フラグのようなクエリ文字列を追加するにはどうすればよいですか?

mod_lua に URL を書き換えるスクリプトを書きたい、つまり mod_rewrite の QSA フラグのようなクエリ文字列を継承したい。

mod_rewrite 構成:

mod_lua で以下のようにコーディングしてみましたが、うまくいきません。何が悪いのか教えてください。そして、もっとシンプルなコードにできるでしょうか?

mod_lua 設定:

/usr/local/httpd/conf/extra/lua/router.lua ルーティング:

0 投票する
2 に答える
190 参照

apache - mod_lua を使用して PostgreSQL からデータを取得できません

これは私のセットアップです:

OS: Linux Ubuntu 14.04 64bit

DB: Postgres 9.4 (公式 Postgres リポジトリからインストール)

Apache: Apache 2.4.20 のソースから手動でコンパイルされ、インストールされた mod_lua を含む 2.4.7

データベースの初期化スクリプトは次のとおりです。

Apache では、次のように構成された mod_dbd が有効になっています。

次のように構成された mod_lua もあります。

これは、失敗する handler.lua で実行しようとしているサンプル コードです。

postgres sql ログを見ると、クエリが正しく実行され、パラメーターが渡されていることがわかります。問題は、lua テーブルに nil プレースホルダーだけの値がないレコードを取得することです-行は次のようになります

{ {} }

それで、これはバグですか、それとも私の間違いですか?

0 投票する
1 に答える
228 参照

lua - apache 2.4 - mod_lua、mod_dbd、freetds を使用して Sybase データベース接続を取得できない

Apache 2.4 アップグレードの一環として、python スクリプトを lua スクリプトに移行しています。要件の 1 つは、Sybase データベースに接続してクエリを実行することです。これを行うために、mod_lua api を使用して db 接続を取得する小さなコードを開発しましたが、成功していません。

freetds で apr-util をインストールしました。

mod_lua、mod_dbd、および freetds を使用してデータベース接続を取得するには、ここに記載されている手順に従いました - http://modlua.org/api/database#dbd

freetds の DDPParams を構成するには、ここに記載されているパラメーターに従いました https://httpd.apache.org/docs/2.4/mod/mod_dbd.html#DBDParams

httpd.conf の VirtualHost に、以下の dbdparams を追加しました。

DBDriver フリート

DBDParams ユーザー名=xxx、パスワード=xxx、ホスト=ホスト-ip:ポート

DBDMax 10

データベース接続を取得するためのluaコードは

Apacheエラーログに表示されるエラーは-

[Thu Aug 25 15:28:03.198044 2016] [dbd:error] [pid 21708:tid 139621318366976] (20014) 内部エラー (特定の情報がありません): AH00629: freetds に接続できません:

[Thu Aug 25 15:28:03.198145 2016] [dbd:error] [pid 21708:tid 139621318366976] (20014) 内部エラー (特定の情報がありません): AH00633: 初期化に失敗しました

[Thu Aug 25 15:28:03.198184 2016] [lua:error] [pid 21708:tid 139621318366976] [client 10.135.15.148:52836] 内部ハンドル method_1 は mod_dbd から接続を取得できませんでした。データベースが実行されている場合、これは権限の問題を示している可能性があります。

同じシステムからtsql を使用してデータベースに接続できます、apache dbd からの接続が機能していません。 何らかの構成 (DBDParams) の問題があるか、OS が apache からの接続をブロックしている可能性があると思われます

誰かがこの点で助けてくれませんか。