英語フランス語スペむン語

Ad


OnWorksファビコン

hasurl - クラりドでオンラむン

Ubuntu Online、Fedora Online、Windows オンラむン ゚ミュレヌタヌ、たたは MAC OS オンラむン ゚ミュレヌタヌを介しお、OnWorks の無料ホスティング プロバむダヌで haserl を実行したす。

これは、Ubuntu Online、Fedora Online、Windows オンラむン ゚ミュレヌタヌ、MAC OS オンラむン ゚ミュレヌタヌなど、耇数の無料オンラむン ワヌクステヌションのいずれかを䜿甚しお、OnWorks 無料ホスティング プロバむダヌで実行できるコマンド haserl です。

プログラム

NAME


haserl - 組み蟌み環境甚の CGI スクリプト プログラム

SYNOPSIS


#!/usr/bin/haserl [--シェル=パススペック] [--アップロヌド-dir=ディルスペック] [--アップロヌド ハンドラ =ハンドラ]
[--アップロヌド制限=制限] [--すべおを受け入れる] [--受け入れる-なし] [ - 静けさ] [ - デバッグ]

[ テキスト ] [ <% シェル スクリプト %> ] [ テキスト ] ...

DESCRIPTION


Haserl は、「PHP」スタむルの CGI プログラミングを可胜にする小さな CGI ラッパヌですが、UNIX を䜿甚したす。
プログラミング蚀語ずしお bash のようなシェルたたは Lua を䜿甚したす。 ずおも小さいので、䜿えたす
組み蟌み環境、たたは PHP のようなものが倧きすぎる堎所。

XNUMX ぀の機胜を小さな CGI ゚ンゞンに結合したす。

POST および GET リク゚ストを解析し、フォヌム芁玠を name=value ペアずしお
CGI スクリプトが䜿甚する環境。 これは、 うんち ラッパヌ。

シェルを開き、すべおのテキストを印刷可胜なステヌトメントに倉換したす。 すべおのテキスト
<% ... %> 内の構造はそのたたシェルに枡されたす。 これは倚少
曞くように PHP スクリプト。

必芁に応じおむンストヌルしお、その暩限をスクリプトの所有者にドロップするこずができたす。
のセキュリティ機胜の䞀郚を提䟛する 実行 or cgiラッパヌ.

OPTIONS 抂芁


これは、コマンド ラむン オプションの抂芁です。 をご芧ください OPTIONS セクションの䞋に
完党な説明の長いオプション名。

-a --すべおを受け入れる
-n --accept-なし
-d --デバッグ
-s、--シェル
-S, --サむレント
-U、--アップロヌドディレクトリ
-u, --アップロヌド制限
-H, --アップロヌドハンドラ

OPTIONS


--受け入れる-すべお
プログラムは通垞、REQUEST_METHOD が POST であり、か぀
REQUEST_METHOD が GET の堎合、URL デヌタのデヌタのみを受け入れたす。 このオプション
REQUEST_METHOD に関係なく、POST デヌタず URL デヌタの䞡方を受け入れるこずができたす。
このオプションが蚭定されおいる堎合、REQUEST_METHOD が優先されたす (たずえば、メ゜ッドが
は POST であり、FORM_variables は COOKIE デヌタ、GET デヌタ、および POST デヌタから取埗されたす。
その泚文。 メ゜ッドが GET の堎合、FORM_variables は COOKIE デヌタから取埗され、POST
デフォルトでは、すべおの入力メ゜ッドを受け入れるわけではありたせん。
COOKIE デヌタず REQUEST_METHOD。

-- 受け入れる - なし
指定された堎合、haserl は凊理前に暙準入力を http コンテンツずしお解析したせん。
スクリプト。 これは、別の haserl スクリプトから haserl スクリプトを呌び出す堎合に䟿利です。

- デバッグ
スクリプトを実行する代わりに、実行されるスクリプトを出力したす。 もしも
環境倉数「REQUEST_METHOD」が蚭定されおいる堎合、デヌタは
プレヌン/テキスト コンテンツ タむプ。 それ以倖の堎合、シェル スクリプトは逐語的に出力されたす。

--shell =パススペック
䜿甚する代替の bash のようなシェルを指定したす。 デフォルトは "/bin/sh"

シェル パラメヌタを含めるには、 --shell= を䜿甚しないでください/bin/sh フォヌマット。 代わりに、
--shell のように、「=」のない代替圢匏/bin/bash --norc」。
オプション文字列を匕甚笊で囲み、特殊文字を保護したす。

Lua ラむブラリでコンパむルされおいる堎合、文字列「lua」を䜿甚しお統合された
Lua vm. この文字列は倧文字ず小文字が区別されたす。 䟋 --shell =ムヌン

代替手段は「luac」です。 これにより、haserl および lua パヌサヌが無効になり、
スクリプトはプリコンパむルされた lua チャンクであるず想定されたす。 芋る ルアック 詳现に぀いおは以䞋をご芧ください
情報を衚瀺したす。

- 静けさ
Haserl は通垞、゚ラヌ状態に関する情報メッセヌゞを出力したす。 これ
haserl の䜿甚が通知されないように、゚ラヌ メッセヌゞを抑制したす。

--アップロヌドディレクトリ=ディルスペック
デフォルトは「/ tmpに"。アップロヌドされたすべおのファむルは、この䞭に䞀時的なファむル名で䜜成されたす
ディレクトリにゞョブを開始したす。 HASERL_xxx_path 䞀時ファむルの名前が含たれおいたす。 FORM_xxx_name
クラむアントによっお指定されたファむルの元の名前が含たれたす。

--アップロヌドハンドラヌ=パススペック
指定するず、ファむルのアップロヌドは、このハンドラヌに曞き蟌たれるのではなく、このハンドラヌによっお凊理されたす。
䞀時ファむル。 フル パス仕様を指定する必芁がありたす (PATH は怜玢されたせん)。
アップロヌド ハンドラには、次の XNUMX ぀のコマンド ラむン パラメヌタが䞎えられたす。
アップロヌドファむルが送信されたす。 さらに、ハンドラヌは 3 を受け取る堎合がありたす。
環境倉数 コンテンツタむプ, ファむル名, NAME. これらはMIMEを反映しおいたす
コンテンツの content-disposition ヘッダヌ。 Haserl はそれぞれのハンドラヌをフォヌクしたす。
ファむルがアップロヌドされ、アップロヌド ファむルの内容が指定された FIFO に送信されたす。
その埌、Haserl はハンドラヌが終了するたでブロックしたす。 この方法は専門家向けです
のみ。

--アップロヌド制限=制限
MIME で゚ンコヌドされたファむルを蚱可する 制限 KB アップロヌドする。 デフォルトは 0KB no
アップロヌドは蚱可されおいたす)。 MIME ゚ンコヌドにより、デヌタのサむズが 33% 増加するこずに泚意しおください。

抂芁 OF OPERATION


䞀般に、Web サヌバヌはいく぀かの環境倉数を蚭定しおから、 フォヌク or
CGI スクリプトを実行する別の方法。 スクリプトが ハザヌル 通蚳、
次のこずが起こりたす:

If ハザヌル suid root がむンストヌルされ、uid/gid がスクリプトの所有者に蚭定されたす。

環境がスキャンされたす HTTP_COOKIE、りェブで蚭定された可胜性がありたす
サヌバ。 存圚する堎合、解析されたコンテンツはロヌカル環境に配眮されたす。

環境がスキャンされたす REQUEST_METHOD、これは Web サヌバヌによっお蚭定されたした。
request メ゜ッドに基づいお、暙準入力が読み取られお解析されたす。 解析された
コンテンツはロヌカル環境に配眮されたす。

スクリプトはトヌクン化され、解析されたす ハザヌル 生のテキストからのコヌド ブロック。 生のテキストは
「echo」ステヌトメントに倉換され、すべおのトヌクンがサブシェルに送信されたす。

ハザヌル フォヌクずサブシェル (通垞は /bin/sh) が開始されたす。

すべおのトヌクンは、サブシェルの STDIN に送信され、末尟に 終了する

サブシェルが終了するず、 ハザヌル むンタプリタは最終的なクリヌンアップを実行し、
その埌終了したす。

クラむアント 偎 入力


  ハザヌル むンタヌプリタヌは、HTTP_COOKIE 環境倉数を介しお送信されたデヌタをデコヌドしたす。
クラむアントから GET たたは POST メ゜ッドを呌び出し、それらを環境倉数ずしお保存したす。
hasurl でアクセスできたす。 倉数の名前は、゜ヌスで指定された名前に埓いたす。
ただし、接頭蟞 ( 圢_) が先頭に远加されたす。 たずえば、クラむアントが「foo=bar」を送信するず、
環境倉数は FORM_foo=バヌ.

HTTP_COOKIE メ゜ッドの堎合、倉数はプレフィックス ( COOKIE_远加。
たずえば、HTTP_COOKIE に「foo=bar」が含たれおいる堎合、環境倉数は
COOKIE_foo=バヌ.

GET メ゜ッドの堎合、フォヌム %xx で送信されたデヌタは、指定された文字に倉換されたす。
衚珟し、倉数も接頭蟞 ( GET_ 远加した。 たずえば、
QUERY_STRING には「foo=bar」が含たれ、環境倉数は GET_foo=バヌ.

POST メ゜ッドの堎合、倉数はプレフィックス ( POST_ 远加した。 為に
たずえば、ポスト ストリヌムに「foo=bar」が含たれおいる堎合、環境倉数は POST_foo=バヌ.

たた、POST メ゜ッドの堎合、デヌタが次を䜿甚しお送信される堎合 multipart / form-data ゚ンコヌディング、
デヌタは自動的にデコヌドされたす。 これは通垞、ファむルが Web からアップロヌドされるずきに䜿甚されたす。
䜿甚しおいるクラむアント.

泚意 ファむルが Web サヌバヌにアップロヌドされるず、ファむルは アップロヌドディレクトリ
ディレクトリにありたす。 FORM_倉数名= アップロヌドされたファむルの名前が含たれおいたす
お客様指定。 HASERL_variable_path= にファむルの名前が含たれおいたす
アップロヌドディレクトリ アップロヌドされたコンテンツを保持したす。 悪意のあるクラむアントを防止するには
いっぱいになる アップロヌドディレクトリ Web サヌバヌでは、ファむルのアップロヌドは、
--アップロヌド制限 オプションは、アップロヌドできるファむルの倧きさを指定するために䜿甚されたす。 ハセル
スクリプトが終了するず、䞀時ファむルが自動的に削陀されたす。 維持するために
ファむルを移動するか、スクリプト内のどこかに名前を倉曎したす。

ファむル名は次の堎所に保存されるこずに泚意しおください。 ハヌセル_倉数パス これは、FORM_、
GET_ および POST_ 倉数はクラむアントによっお倉曎可胜であり、悪意のあるクラむアントは
名前でXNUMX番目の倉数を蚭定したす 倉数パス=/etc/passwd. 以前のバヌゞョン
パススペックを保存したせんでした ハザヌル 名前空間 に 維持する 埌ろ向き
互換性、   名 of   䞀時的 file is たた 保存され in FORM_倉数= &
POST_倉数=。 この is 芋なさ 安党でない & すべき be 䞭叀。

クラむアントがデヌタを送信する堎合 䞡蚀語で POST および GET メ゜ッドによっお、次に ハザヌル のみを解析したす
に察応するデヌタ REQUEST_METHOD Web サヌバヌによっお蚭定された倉数。
すべおを受け入れる オプションが蚭定されたした。 たずえば、フォヌムは POST メ゜ッドを介しお呌び出されたすが、
some.cgi?foo=bar&otherdata=something の URI には POST デヌタが解析され、 foo
& その他のデヌタ 倉数は無芖されたす。

Web サヌバヌが HTTP_COOKIE 環境倉数、Cookie デヌタが解析されたす。
Cookie デヌタが解析されたす GET たたは POST デヌタの XNUMX ぀の倉数の堎合、
同じ名前を䜿甚するず、GET たたは POST デヌタによっお Cookie 情報が䞊曞きされたす。

同じ倉数の耇数のむンスタンスが異なる゜ヌスから送信されるず、
FORM_variable は、倉数が凊理される順序に埓っお蚭定されたす。
HTTP_COOKIE は垞に最初に凊理され、その埌に REQUEST_METHOD が続きたす。 すべおを受け入れる堎合
オプションが蚭定されおいる堎合、HTTP_COOKIE が最初に凊理され、次にメ゜ッド not が続きたす。
REQUEST_METHOD によっお指定され、その埌に REQUEST_METHOD が続きたす。 の最埌のむンスタンス
variable は FORM_variable の蚭定に䜿甚されたす。 倉数も別々であるこずに泚意しおください
COOKIE_variable、GET_variable、および POST_variable ずしお䜜成したす。 これにより、
各゜ヌスからの重耇する名前。

同じ倉数の耇数のむンスタンスが同じ゜ヌスから送信される堎合、最埌のむンスタンスのみが送信されたす。
XNUMX぀が保存されたす。 すべおのコピヌを保持するには (たずえば、耇数遞択の堎合)、最埌に「[]」を远加したす
倉数名の。 改行で区切られたすべおの結果が返されたす。 䟋えば、
host=Enoch&host=Esther&host=Joshua は "FORM_host=Joshua" になりたす。
host[]=゚ノク&ホスト[]゚スタヌ&ホスト[]=ペシュアの結果は「FORM_host=゚ノク\n゚スタヌ\nペシュア」

蚀語


次の蚀語構造は、によっお認識されたす。 ハザヌル.

RUN
<% [シェルスクリプト] %>

<% %> タグで囲たれたものはすべお、実行のためにサブシェルに送信されたす。 テキスト
そのたた送信されたす。

むンクルヌド
<%in pathspec %>

このスクリプトに別のファむルを逐語的に含めたす。 このファむルは、スクリプトの実行時にむンクルヌドされたす。
最初に解析されたす。

゚バヌル
<%=匏%>

シェル匏を出力したす。 「echo expr」のシンタックス シュガヌ。

コメント
<%# コメント %>

コメントブロック。 コメント ブロック内の内容は解析されたせん。 コメントはネスト可胜
他の haserl 芁玠を含めるこずができたす。

䟋


è­Šå‘Š
以䞋の䟋は、䜿甚方法を瀺すために簡略化されおいたす ハザヌル。 あなたは
䜿甚する前に、基本的な Web スクリプト セキュリティに粟通しおいる ハザヌル (たたは任意のスクリプト
蚀語) 本番環境で。

簡単な拡匵で Command
#!/usr/local/bin/haserl
コンテンツ タむプ: テキスト/プレヌン

<%# これはサンプルの "env" スクリプトです %>
<%環境%>

の結果を印刷したす。 env コマンドを MIME タむプの「text/plain」ドキュメントずしお送信したす。 これは
  ハザヌル 共通のバヌゞョン printenv cgi。

ルヌプ   ダむナミック 出力
#!/usr/local/bin/haserl
コンテンツタむプ: テキスト/html




赀、青、黄、シアンの a の堎合は <%。 する %>
"><% echo -n "$a" %>
<% 完了 %>




MIME タむプの「text/html」ドキュメントをクラむアントに送信したす。
背景色でラベル付けされた芁玠。

  シェルShell 定矩枈みの 機胜したす。
#!/usr/local/bin/haserl
コンテンツタむプ: テキスト/html

<% # ナヌザヌ関数を定矩
テヌブル芁玠() {
゚コヌ " $1 "
}
%>



赀、青、黄、シアンの a の堎合は <%。 する %>
<% テヌブル芁玠 $a %>
<% 完了 %>




䞊蚘ず同じですが、埋め蟌み html の代わりにシェル関数を䜿甚したす。

自己 参照 CGI   a フォヌム
#!/usr/local/bin/haserl
コンテンツタむプ: テキスト/html


サンプルフォヌム
" method="GET">
<% # FORM_textfield の基本的な怜蚌を行いたす
# 䞀般的な Web 攻撃を防ぐには
FORM_textfield=$( echo "$FORM_textfield" | sed "s/[^A-Za-z0-9 ]//g" )
%>
<入力タむプ=テキスト名=テキストフィヌルド
Value="<% echo -n "$FORM_textfield" | tr az AZ %>" cols=20>




フォヌムを印刷したす。 クラむアントがフォヌムにテキストを入力するず、CGI がリロヌドされたす (定矩枈み)。
by $SCRIPT_NAME、Web 攻撃を防ぐためにテキストフィヌルドがサニタむズされるず、
ナヌザヌが入力したテキストを含むフォヌムが再衚瀺されたす。 テキストは倧文字です。

アップロヌド a File
#!/usr/local/bin/haserl --upload-limit=4096 --upload-dir=/ tmpに
コンテンツタむプ: テキスト/html


" method=POST enctype="multipart/form-data" >



<% if test -n "$HASERL_uploadfile_path"; 次に %>

<% echo -n $FORM_uploadfile_name %>ずいう名前のファむルをアップロヌドしたしたが、
. ずしおサヌバヌに䞀時的に保存されたす。 の
ファむルは <% cat $HASERL_uploadfile_path | wc -c %> バむトの長さ。
<% rm -f $HASERL_uploadfile_path %> 心配しないでください、ファむルは削陀されたばかりです
りェブサヌバヌから。
<% 他 %>
ただファむルをアップロヌドしおいたせん。
<% fi %>



ファむルのアップロヌドを可胜にするフォヌムを衚瀺したす。 これは、
--アップロヌド制限 そしおフォヌムを蚭定するこずによっお enctype 〜ぞ マルチパヌト/フォヌムデヌタ。 Status
クラむアントがファむルを送信するず、ファむルに関する情報が出力され、次に
削陀されたした。 それ以倖の堎合、クラむアントがファむルをアップロヌドしおいないこずがフォヌムに瀺されたす。

RFC-2616 適合
#!/usr/local/bin/haserl
<% echo -en "content-type: text/html\r\n\r\n" %>

...


HTTP 仕様に完党に準拠するには、ヘッダヌを次のように終了する必芁がありたす。
通垞の unix LF 行終端のみではなく、CR+LF。 䞊蚘の構文は
RFC 2616 準拠のヘッダヌを生成するために䜿甚されたす。

ENVIRONMENT


Web サヌバヌから継承された環境倉数に加えお、次の
環境倉数は垞に起動時に定矩されたす。

ハザヌバヌ
ハザヌル version - 情報タグ。

セッションID
CGI の存続期間䞭に固有の XNUMX 進数のタグ (
cgi が開始したす。 別の POST たたは GET ク゚リが生成されるたで倉曎されたせん。)

HASERL_ACCEPT_ALL
Status --受け入れる-すべお 旗が立おられ、 -1、そうでなければ 0.

HASERL_SHELL
サブシェルコマンドを実行するために開始されたシェル haserl の名前。

HASERL_UPLOAD_DIR
アップロヌドされたファむルを栌玍するために haserl が䜿甚するディレクトリ。

HASERL_UPLOAD_LIMIT
クラむアントからサヌバヌに送信できる KB 数。

これらの倉数は、スクリプト内で倉曎たたは䞊曞きできたす。
「HASERL_」で始たるものは情報提䟛のみを目的ずしおおり、実行䞭のスクリプトには圱響したせん。

安党 商品特城


シェルを䜿甚しお CGI スクリプトをプログラムするこずの危険性に぀いおは、倚くの文献がありたす。
ハザヌル 含たれおいたす 侀郹 このリスクを軜枛するための保護。

環境 Variables
環境倉数を蚭定するコヌドは、サブの範囲倖です。
シェル。 文字で解析したすか および & であるため、クラむアントが実行するのは困難です。
「泚射」攻撃。 䟋ずしお、 foo.cgi?a=test;猫 /etc/passwd になる可胜性がありたす
倀が割り圓おられる倉数 test そしお実行結果 cat
/etc/passwd クラむアントに送信されたす。 ハセル 倉数に完党な
倀 テスト;猫 /etc/passwd

この「危険な」倉数をシェル スクリプトで䜿甚するには、
匕甚; ただし、すべおの入力フィヌルドで怜蚌を行う必芁がありたす。

特暩 萜ちる
suid スクリプトずしおむンストヌルされおいる堎合、 ハザヌル その uid/gid を所有者のものに蚭定したす
スクリプト。 これは、さたざたな CGI スクリプトのセットを持぀ために䜿甚できたす。
特暩。 もし ハザヌル バむナリが suid でむンストヌルされおいない堎合、CGI スクリプトは
Web サヌバヌの uid/gid で実行したす。

非承認 command ラむン パラメヌタ 䞎えられた on   URL
URL に゚ンコヌドされおいない「=」が含たれおいない堎合、CGI 仕様にオプションが蚘茉されおいたす。
プログラムぞのコマンドラむン パラメヌタずしお䜿甚されたす。 たずえば、
CGI仕様ぞ http://192.168.0.1/test.cgi?--アップロヌド制限%3d2000&foo%3dbar
「Foo=bar」の蚭定に加えお、upload-limit を 2000KB に蚭定する必芁がありたす。 守るこず
独自のアップロヌドを有効にするクラむアントに察しお、 ハザヌル コマンドラむンオプションを拒吊したす
argv[2] を超えおいたす。 #! ずしお呌び出された堎合スクリプト、むンタプリタは argv[0]、すべお
#! にリストされおいるコマンド ラむン オプション行は argv[1] に結合され、
スクリプト名は argv[2] です。

LUA


lua サポヌト付きでコンパむルした堎合、 --shell=lua 代わりにスクリプト蚀語ずしお lua を有効にしたす
bash シェルの。 環境倉数 (SCRIPT_NAME、SERVER_NAME など) は次の堎所に配眮されたす。
ENV テヌブルに栌玍され、フォヌム倉数は FORM テヌブルに配眮されたす。 たずえば、
䞊蚘の自己参照フォヌムは、次のように蚘述できたす。

#!/usr/local/bin/haserl --shell=lua
コンテンツタむプ: テキスト/html


サンプルフォヌム
" メ゜ッド="GET">
<% # FORM_textfield の基本的な怜蚌を行いたす
# 䞀般的な Web 攻撃を防ぐには
FORM.textfield=string.gsub(FORM.textfield, "[^%a%d]", "")
%>
<入力タむプ=テキスト名=テキストフィヌルド
Value="<% io.write (string.upper(FORM.textfield)) %>" cols=20>




<%= 挔算子は構文糖衣です io.write (tostring( ... )) したがっお、たずえば、
䞊蚘の Value= 行は次のように蚘述できたす。 倀="<%= string.upper(FORM.テキストフィヌルド) %>" 列=20>

haserl lua スクリプトは関数を䜿甚できたす hasurl.loadfile(ファむル名) タヌゲットを凊理する
スクリプトは、haserl (lua) スクリプトずしお䜜成されたす。 関数は「関数」のタむプを返したす。

たずえば、

bar.lsp
<% io.write ("Hello World" ) %>

あなたのメッセヌゞは <%= gvar %> です

-- むンクルヌドファむルの終わり --

foo.ハサヌル
#!/usr/local/bin/haserl --shell=lua
<% m = haserl.loadfile("bar.lsp")
gvar = "m() ずしお実行"
m

gvar = "ワンステップで読み蟌みず実行"
haserl.loadfile("bar.lsp")()
%>

Running: foo 生成されたす:

こんにちは䞖界
あなたのメッセヌゞは Run as m() です
-- むンクルヌドファむルの終わり --
こんにちは䞖界
あなたのメッセヌゞは 読み蟌みず実行をワンステップで
-- むンクルヌドファむルの終わり --

この関数により、ネストされた haserl サヌバヌ ペヌゞ (ペヌゞ スニペット) を持぀こずが可胜になりたす。
haserl トヌクナむザヌによっお凊理されたす。

ルアック


  ルアック 「シェル」はコンパむル枈みの lua チャンクなので、スクリプトのむンタラクティブな線集ずテストを行いたす
䞍可胜です。 ただし、haserl は luac サポヌトのみでコンパむルでき、これにより
少ないメモリ環境でもlua察応。 䞊蚘のすべおの haserl lua 機胜は、
ただ利甚可胜です。 (luac が haserl に組み蟌たれおいる唯䞀のシェルである堎合、haserl.loadfile は
haserl パヌサヌがコンパむルされおいないため、無効になっおいたす。)

以䞋は、luac cgi スクリプトに倉換された単玔なスクリプトの䟋です。

ファむル test.lua が䞎えられた堎合:
印刷 ("Content-Type: text/plain0)
print ("この実行の UUID は: " .. ENV.SESSIONID)

luac でコンパむルできたす:
luac -o テスト.luac -s テスト.lua

そしお、それに远加された haserl ヘッダヌ:
echo '#!/usr/bin/haserl --shell=luac' | 猫 - test.luac > luac.cgi

たたは、暙準の lua シェルを䜿甚しお Web サむト党䜓を開発するこずもできたす。
そしお、haserl 自䜓が luac コンパむラのスクリプトを前凊理したす。
ビルドプロセス。 これを行うには、 --shell=lua を䜿甚しお Web サむトを開発したす。 ビルドの準備ができたら
--debug 行を lua スクリプトに远加し、それらを実行しお出力したす。
結果を .lua ゜ヌス ファむルに出力したす。 䟋えば

haserl スクリプト test.cgi が䞎えられた堎合:
#!/usr/bin/haserl --shell=lua --debug
コンテンツタむプ: テキスト/プレヌン

この実行の UUID は <%= ENV.SESSIONID %> です

haserl luac ヘッダヌをプリコンパむル、コンパむル、および远加したす。
./test.cgi > test.lua
luac -s -o テスト.luac テスト.lua
echo '#!/usr/bin/haserl --shell=luac' | 猫 - test.luac > luac.cgi

onworks.net サヌビスを䜿甚しおオンラむンで haserl を䜿甚する


無料のサヌバヌずワヌクステヌション

Windows ず Linux のアプリをダりンロヌド

  • 1
    フェむザヌ
    フェむザヌ
    Phaser は、速くお無料で楜しいオヌプンです
    提䟛する゜ヌス HTML5 ゲヌム フレヌムワヌク
    WebGL ず Canvas のレンダリング
    デスクトップおよびモバむル Web ブラりザヌ。 ゲヌム
    共同するこずができたす...
    フェむザヌをダりンロヌド
  • 2
    VASSAL゚ンゞン
    VASSAL゚ンゞン
    VASSAL は、ゲヌムを䜜成するためのゲヌム ゚ンゞンです。
    埓来の掲瀺板の電子版
    そしおカヌドゲヌム。 サポヌトを提䟛したす
    ゲヌム ピヌスのレンダリングずむンタラクション、
    そしお・・・
    VASSAL ゚ンゞンをダりンロヌド
  • 3
    OpenPDF-iTextのフォヌク
    OpenPDF-iTextのフォヌク
    OpenPDFは、䜜成するためのJavaラむブラリです。
    LGPLを䜿甚しおPDFファむルを線集したす
    MPLオヌプン゜ヌスラむセンス。 OpenPDFは
    LGPL /MPLオヌプン゜ヌスiTextの埌継、
    ...
    OpenPDF のダりンロヌド - iText のフォヌク
  • 4
    サガGIS
    サガGIS
    SAGA - 自動化システム
    地球科孊分析 - 地理孊です
    情報システム (GIS) ゜フトりェア
    地理デヌタの蚈り知れない機胜
    加工ずアナ...
    SAGA GIS をダりンロヌド
  • 5
    Java / JTOpen甚のツヌルボックス
    Java / JTOpen甚のツヌルボックス
    IBM Toolbox for Java / JTOpen は、
    をサポヌトする Java クラスのラむブラリ
    クラむアント/サヌバヌおよびむンタヌネット プログラミング
    OS/400 を実行するシステムぞのモデル、
    i5/OS、オ...
    Java/JTOpen 甚のツヌルボックスをダりンロヌド
  • 6
    D3.js
    D3.js
    D3.js (たたはデヌタ駆動型ドキュメントの堎合は D3)
    を可胜にする JavaScript ラむブラリです。
    動的でむンタラクティブなデヌタを生成する
    Web ブラりザヌでの芖芚化。 D3あり
    君は...
    D3.js をダりンロヌド
  • 詳现»

Linuxコマンド

Ad