2

mod_perlWeb開発に使用しています。mod_perlPerl モジュールを変更するたびに再起動したくありません。

ドキュメントに記載されているように、モジュールの使用を提案する1つのソリューションに出会いApache::Reload、CPANからこのモジュールをインストールし、それに応じて変更してPerlモジュールにhttpd.conf追加しました。use Apache::Reload

「すべてのモジュールをリロードする」方法と、ファイルに触れたときに特定のモジュールをリロードする方法を試しましたが、どちらもまったく機能しません。

mod_perlこれが機能しない可能性がある他の構成 (またはその他の要因) を誰かが知っているかどうか尋ねてもよろしいですか?

4

2 に答える 2

0

PerlMonks 経由の Perrin Harkins からのこのソリューションを使用します。

「MaxRequestsPerChild を 1 に設定し、変更される可能性のあるモジュールを親ではなくにロードします (明らかに開発環境のみ)。各リクエストは新しい子サーバーにヒットし、変更される可能性のあるすべてのモジュールが新たにロードされます。」

「実行中のWebサーバーでモジュールの変更を確認するより良い方法」から - http://www.perlmonks.org/bare/?node_id=794860

于 2010-09-24T12:46:59.190 に答える
-1

直接またはPSGIドライバーを備えたフレームワークの1つを介して、Plackを使用してアプリを作成することを検討してください。次に、デバッグするときに、次のplackupようなツールを使用します。

$ plackup --server Apache2 -r --app /path/to/your_app.psgi

plackupのドキュメントには、.psgiファイルの外観の詳細が記載されており、フレームワークのドキュメントも役立ちます。次に、Catalyst :: Engine::PSGIを使用した例を示します。

# app.psgi
use strict;
use MyApp;

MyApp->setup_engine('PSGI');
my $app = sub { MyApp->run(@_) };
于 2009-12-18T10:40:31.823 に答える