問題タブ [mod-perl]

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 投票する
1 に答える
144 参照

perl - PerlのWebスクリプトがModPerl::Registry(mod_perlハンドラー)を使用して実行されているかどうかを検出するにはどうすればよいですか?

ModPerl :: Registryを使用して実行されている場合、mod_perlで実行されているWebアプリで検出することは可能ですか?

ModPerl :: Registry(または同様のハンドラー)で実行されるスクリプトを作成したいのですが、mod_perl応答ハンドラーとしても機能します。

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

mysql - Perl接続プール

現在、生のDBIを使用してMySQLに接続し、SQLステートメントを実行する大規模なperlアプリケーションがあります。毎回接続を作成して終了します。mysqlの接続制限に近づき始めていました(一度に200)

DBIx::Connectionはアプリケーション層の接続プールをサポートしているようです。

誰かが何か経験がありDBIx::Connectionますか?接続プールに関する他の考慮事項はありますか?

またmod_dbd、接続プールを処理しているように見えるApachemodもわかります。 http://httpd.apache.org/docs/2.1/mod/mod_dbd.html

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

perl - PerlWebアプリとmod_perlアーキテクチャの質問

私はPerlでウェブサイトを書きました。これには、すべてのHTTPリクエストが送信されるルートハンドラーがあります。

次に、このルートハンドラーはリクエストを処理し、Cookie、POST、GET変数などを処理してから、サブハンドラーを選択してリクエストを転送します。

ルートハンドラーにはすべてのサブハンドラーが含まれ、すべてのサブハンドラーには必要なすべてのモジュールが含まれるため、基本的にすべてのリクエストでコードベース全体を処理しています。mod_perlを使用していなかった場合、私はこれについて少し心配するでしょう。

しかし、これはまだ物事を行うための間違った方法ですか?ルートハンドラーを削除して、サブハンドラーに直接ジャンプする必要がありますか?

ありがとう

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

hudson - Apache モジュール開発のために mod-perl で継続的インテグレーション (Hudson など) を使用するためのベスト プラクティスは何ですか?

mod_perlを使用してApacheモジュールを開発するための継続的統合テストを実行するためにHudsonを使用することを検討しています。これらの種類の CI システムを apache モジュールで利用するためのベスト プラクティスや推奨される戦略はありますか?

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

perl - mod_perlのPerlChildInitHandlerとPerlResponseHandlerの間で共有変数がクリアされるのはなぜですか?

中に構成ファイルをハッシュにロードしてPerlChildInitHandlerから、からの値にアクセスしようとしていますPerlResponseHandler。ただし、プロセス番号は同じですが、child_init()呼び出し中に変更された変数は、呼び出されるとデフォルト値に戻るようですhandler()

基本的なシナリオは次のとおりです。

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

sqlite - mod_perl で SQLite を使用する

Web アプリケーションのデータ ストアとして SQLite を使用していますが、現在 mod_perl を使用して Web サイトを実装していて、データベースのロックの問題が発生しています。

予想どおり、Web サーバーの起動時に Web アプリケーション全体が Plack Apache ハンドラ (Plack::Handler::Apache2) によってロードされます。最初の db クエリはデータベース全体にロックを作成し、db を変更する必要がある後続のクエリは失敗します。

私の抜け道は何ですか?永続的な Web 環境で SQLite を使用できますか? 他のデータベースストアを探す必要がありますか?

私は MySQL のファンではなく、使用したくありません。PostGres を使用する可能性もありますが、Tokyo Cabinet などのキー/値データベースを使用するにはまったく新しい方法を学ぶ必要があるため、軽量でできれば SQL ベースのものを使用したいと考えています。私はむしろ本当にSQLiteを使いたいです。

0 投票する
4 に答える
779 参照

php - PHP で Apache プロトコル ハンドラを作成することは可能ですか?

PHP で Apache 2 用のカスタム「プロトコル ハンドラ」(カスタム ポートでリッスンする) を作成できるかどうか、またどのように作成できるか疑問に思っています。

C および mod_perl では、いわゆる「プロトコル ハンドラ」を記述できます。これは、Apache の初期段階 (クライアント ソケット接続が accept() された後、コンテンツが書き込まれる前) をインターセプトし、たとえばFTPを処理できます。またはSMTPプロトコル。PHPでも可能ですか?

たとえば、次の単純な mod_perl ハンドラを PHP に移植したいと考えています (メモリ使用量を比較するため - 私の mod_perl-handler は子ごとに 20m を必要とするため)。私のハンドラーはポート 843 でリッスンし、文字列 POLICY をクライアント ソケットに書き込みます。

ありがとう、アレックス

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

c - CのApacheモジュール:クライアントソケットにデータを書き込む方法は?

ポート 843 に接続しているFlash クライアントに 0 で終わる文字列を書き込むシンプルな mod_perl モジュールを作成しました。

そのため、モジュールを C で書き直そうとしていますが、プロトコル ハンドラが受け取るconn_rec構造体を介してクライアント ソケットにアクセスする方法がわかりません。

メーリング リストで質問し、#define CORE_PRIVATEを追加してap_get_module_config(conn->conn_config, &core_module)を使用しようとしましたが、これにより Web サーバーが壊れます。文字列はポート 843 (これで問題ありません) の両方に提供されますが、ポート 80 (これは問題ありません)。

誰かここで提案してください。

これが私の SocketPolicy.pm です (正常に動作しますが、大量のメモリが必要です):

これが壊れた mod_socket_policy.c です (ポート 80 をハイジャックします):

また、mod_perl のソースを調べたところ、同じメソッドを使用してクライアント ソケットにアクセスしているようです。

では、なぜ私の Perl モジュールは機能し、C モジュールは機能しないのでしょうか?

0 投票する
5 に答える
1085 参照

perl - Perl の前提条件

Perl CGI スクリプトを使用して Web サイトを開発するのは初めてです。

Perl の前提条件は何ですか?

基本的なアイデアや良いチュートリアルを教えてください。

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

perl - mod_perl2 を使用した Strawberry Perl: CPAN から Apache2 モジュールを構築する

mod_perl メーリング リストの手順に従って、Strawberry Perl 5.10 と mod_perl2を問題なくインストールしました。Apache2::ただし、スクリプトが使用するさまざまなモジュールをインストールしようとすると、エラーが発生します。1 つ ( Apache2::Reload) これにもかかわらず、インストールできました。

...いくつかの .pm ファイルを にコピーするだけですsite/lib。ただし、他のものについてはあまりよくわかりません。たとえばApache2::RequestRec、次のエラーが表示されます。

Apache2::Strawberry Perl でモジュールをコンパイルするコツはありますか? 自分の Apache バイナリもコンパイルする必要がありますか? (もしそうなら、Strawberry に付属の make ツールでそれを行うことはできますか?)