問題タブ [cgi-bin]
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.
perl - CGI スクリプトのプレーンテキスト パスワードはセキュリティ ホールですか?
Web サーバーで問題が発生し、Web ブラウザーで PHP スクリプトがプレーン テキスト ファイルとして表示される可能性があることを読みました。その結果、ほとんどの PHP スクリプトを Web ルート以外のディレクトリに移動しました。今、私の cgi-bin の CGI スクリプトにも同じことが起こるのではないかと考えていました。
私の主な関心事は、MySQL データベースのユーザー名とパスワードを含む 1 つのスクリプトです。これがセキュリティ ホールの可能性がある場合 (少なくともデータベース コンテンツに関する限り)、機密データを別の場所に置き、そこから取得する方法はありますか (別のディレクトリのファイルに保存して読み取るなど)たとえば、そのファイルから)?私のスクリプトは Perl で書かれています。
python - 相対パスで現在のディレクトリの上にあるPythonosモジュールのファイルを開く
OSモジュールのドキュメントには、フルパスなしでスクリプトが実行されているサブディレクトリまたは現在のディレクトリにないファイルを開く方法に関する情報が含まれていないようです。私のディレクトリ構造は次のようになります。
ファイルが見つからないというエラーが表示されます。しかし、cgi-binディレクトリでPythonインタープリターを起動して、それが機能するようにするとopen("../../fileIwantToOpen.txt","r")
します。明らかな移植性の理由から、フルパスでハードコーディングしたくありません。これを実行できる一連のメソッドがOSモジュールにありますか?
exception - java.lang.IllegalStateException: 応答がコミットされた後にセッションを作成できません
無効な URL に対するこの非常に奇妙なリクエストを受け取りました:
これにより、次のエラーが発生します。
この問題を解決するにはどうすればよいですか?
html - cgi スクリプト スクロール可能 check_box
Web ページにある scrolling_list を cgi スクリプトでスクロール可能な check_box に変換しようとしています。これはcgiで可能ですか?Javaでできることはたくさんあります。しかし、それがCGIでできるかどうか疑問に思っていますか?前もって感謝します。
apache - Apacheで大きなファイルへのアクセスを制御する
署名付きURLを使用して、いくつかの大きなファイル(ここでは何GBも話している)へのアクセスを制御しようとしています。現在、ファイルはLDAP基本認証(mod_auth_ldap
)によって制限されていますが、署名を検証するためにこれを変更する必要があります(URLのクエリパラメーターとして渡されます)。
基本的には、スクリプトを実行して署名を検証し、認証が成功したかのようにリクエストを続行できるようにする必要があります。私が最初に考えたのは、単純なCGIスクリプトを使用することだけでしたが、ファイルが非常に大きいため、パフォーマンスが心配です。したがって、実際には、この質問は(おそらく)「Apacheを介してCGIスクリプトから大きなファイルをストリーミングすることのパフォーマンスへの影響はありますか?」…そしてもしそうなら、「これを行うためのより良い方法はありますか(専用の書き込みを除く)認証モジュール)?」
これが理にかなっているなら、助けていただければ幸いです:)
PSこれを何で検索すればよいか正確にはわからなかったので(10分間のグーグルは役に立たなかった)、他の誰かの投稿を複製している可能性があります。
session - BDEinmem000.remアクセス/共有違反
ページが要求されるたびにBDEThingyへの接続を開くこの独自のWebCGI実行可能ファイルがあります。
そのコンパイルされたexeの動作やBDEの動作については何も知りませんが、各ページ要求中にBDEが一時的なINMEM000.REMファイルを生成することを確認しました。
問題は、サーバーに大きな負荷がかかっている間、ページの生成がしばらく続く可能性があることです。その間、BDEは同じINMEM000.REMファイルを作成/ロックしようとするため、他のユーザーが別のページを要求することはできません。
このファイルがBDEへのアプリケーションセッションと関係があるという情報を見つけました。
しかし、なぜBDEは同じファイルに固執するのでしょうか。複数のセッションロックファイルを作成するように指示することはできませんか?それともアプリケーションに依存しているのでしょうか。CGI部分でエンコードする必要がありますか?
前もって感謝します。
python - CGIがPythonを実行していません-500内部サーバーエラー
実行したいPythonスクリプトがいくつかあり、次の構成があります:Ubuntu 10.04、Apache2、Python 2.6、mod_python、mod_wsgiがインストールされています。
次のサイトの指示に従いました。
http://bytes.com/topic/python/answers/474462-apache-python-ubuntu
http://apache.active-venture.com/cgi-configure.html
http://modpython.org/live/current/doc-html/inst-testing.html
http://code.google.com/p/modwsgi/wiki/QuickInstallationGuide
http://wiki.apache.org/httpd/DistrosDefaultLayout
サイトのデフォルトファイル-利用可能:
500内部サーバーエラーが発生します。また、ファイルのアクセス許可を755に変更しました
pyファイルは、ページに表示されるはずのテキストを出力するだけです。私は何をすべきか?ありがとう
[編集]:更新、以下に示すpyファイルエラーログのバグに関連しています。
ここで、Noneからintへの変換中にエラーが発生したようです。
このような変換をどのように行うことができるかについてのヒントはありますか?
perl - cgi-bin として使用するときに、setuid() で Perl スクリプトを正常に実行する方法は?
Apache 経由またはコマンドラインで呼び出される Perl スクリプトがあります。
テスト目的で、Perl スクリプトで操作するユーザー名を渡しPOSIX::setuid
、uid
.
コマンド ラインからスクリプトを実行すると、uid
適切に設定されます。
コマンドライン出力には、スクリプトの実行を開始したテスト アカウントではなくuid
、指定された正しい が表示されます。$username
uid
Apache 経由でスクリプトを呼び出すとuid
、ユーザーの ID に設定されたままになり、変更さapache
れることはありません。
ドキュメントをsuExec
読んだ後:
http://www.example.com/~username
このスクリプトのコピーをfor everyに入れることはできません$username
。スクリプトは 1 つの場所から実行する必要がありuid
、スクリプト内で from を指定する必要があります。Apache 構成ファイルの仮想ホスト ディレクティブで一度指定された単一のユーザー名としてではなく、実行時に指定されたユーザー名としてスクリプトを実行する必要があります。新しいユーザーがこのスクリプトを実行するたびに、この構成ファイルを変更して Apache を再起動するのは現実的ではありません。
uid
を使用しているときに、Perl スクリプトを cgi-bin として実行して正しく変更するにはどうすればよいsetuid()
ですか?
cgi-bin - 複雑なcgiスクリプトは機能しますが、test.cgiは機能しません
同じcgi-binフォルダーに2つのcgiファイルがあります。1つの複雑な300百行のスクリプトは正常に機能しますが、この単純なcgi-scriptに関しては次のようになります。
Webページは500内部サーバーエラーを返します...
なぜ?:(
編集:
わかりました、問題は1つのサーバーで解決されました、cgiは正常に動作します。しかし...
今、私はcgi-scriptsを別のサーバーで動作させようとしていますが、何をしても「内部サーバーエラー」メッセージが表示され続け、エラーログには何も表示されないようです。助言がありますか?
cgi-bin - サーバー側の電子メールスクリプト
実行しようと考えているプロジェクトのアイデアが頭の中にありますが、このデスクトッププログラマーは、Webサーバーの開発に関してどこから始めればよいのか本当にわかりません。
あるアドレスで電子メールを受信したときにスクリプトが応答するようにしたいのですが、これによりデータベースにクエリが実行され、何らかの決定が行われ、場合によってはこの電子メールが別のアドレスに転送されます。スクリプトを記述してホストされているCGI-BINディレクトリに配置すれば、PerlまたはPHP(または実際には任意のスクリプト言語)で実際の解析とデータベースの相互作用を実行できることを知っています。しかし、それを超えて、私は少し迷っています。
要約すれば:
私の具体的な質問は次のとおりです。本質的に、メールボックスに「フックイン」して、電子メールを受信したときにスクリプトを実行するにはどうすればよいですか。
私のより一般的な質問は、URLを要求するだけでなく、ユーザーイベントにどのように応答するかです。たとえば、ライセンスコードを受け入れるためのアプリケーションを実行したい場合、どのようにそれを達成しますか?(開いているソケットまたはポートでメッセージをリッスンする、データベースに対してアクションを実行するなど)
私の(おそらく広すぎる)質問は次のとおりです。私の次のステップは、さらに深くなるために何でしょうか?どのような本やリソースがそれをすべてクリックさせ、1000人のIT(wo)menの力を持っているようにあなたを落ち込ませましたか?
私の経歴/私がすでに知っていることについての詳細:
私はWeb開発にあまり踏み込んだことはありませんが、世界は相互に関連し合って成長しているので、暗闇の中で座り続けることはできません。私はコーディングとスクリプトの作成方法、PHP / MySQL Webサイトの作成方法を知っており、ある程度の能力を備えた*nixマシンをナビゲートできます。
過去5〜10年間、Cファミリーの言語に焦点を当ててきました。ASPの大まかな知識を、JavaScriptがほとんどないPHPの大まかな知識に置き換えました。多くのVBScriptと、最近ではPythonがあります。