1

共有ホスティング環境でCPAN の Perl モジュール (具体的にはAuthCookieDBI.pm ) を使用しようとしています。

.pmファイルを使用しようとしているディレクトリにコピーしようとしましたが.htaccess、ページの指示に従ってファイルを更新しましたAuthCookieDBIが、Apache ログには次のように表示されます。

Invalid command 'PerlModule', perhaps misspelled or defined by a module not 
included in the server configuration

これはエラーの原因となる行のようです:

PerlModule Apache2::AuthCookieDBI

Apache:ASP FAQによると、これは がmod_perlインストールされていないために発生します。私は共有ホスティングを使用しています (そのため、root 権限が必要な操作はできません)。これについて私にできることはありますか?

4

4 に答える 4

2

共有ホスティングを使用している場合は、ほとんどの場合mod_perlを使用していません。したがって、このモジュールを使用することはできません。要するに、mod_perlは、プログラマーがApacheと対話するための方法であり、物事の発生方法を変える可能性があります。あなたはapacheを共有しているので、他の人にあなたの変更を受け入れさせるのは良いことではありません。

サーバーをより細かく制御したい場合は、専用のWebサーバーを入手する必要があります。それをどのように行うかは、プロバイダーが提供するものによって異なります。

于 2010-01-09T17:37:19.130 に答える
2

Apache2::AuthCookieDBI は mod_perl を必要とするため、それがなければモジュールは役に立ちません。

于 2010-01-09T17:24:02.947 に答える
0

通常、cpanツールを使用してモジュールをダウンロードしてインストールします。下などの標準的な場所にインストールする必要があります (ディレクトリがどこに設定されているかを確認するには、を参照してください) /usr/local/lib。適切にインストールされると、perl スクリプトは、mod_perl または apache 構成に特別な変更を加える必要なく、perl の標準部分であるかのようにモジュールを見つけることができます。(ルート権限を必要とせずにモジュールをホームディレクトリにインストールすることもできます。その手順は CPAN FAQ に含まれています。)perl -V@INC

見る:

また、CPAN FAQ自体にも多くの情報があります。

編集:結局、あなたの質問に対する本当の答えは「できません。必要なことを行うには、mod_perlを必要としない別のモジュールを見つける必要があります」です。

于 2010-01-09T17:21:08.500 に答える
-2

解凍したモジュールを に置くだけです/path/lib/。以下は、このモジュールを含めるために必要なコードです。


#!/usr/bin/perl -w
use diagnostics;
use warnings;
use lib "$ENV{DOCUMENT_ROOT}/path/lib/";
unshift @INC , "$ENV{DOCUMENT_ROOT}/path/lib/";
use modulename;
于 2010-01-09T17:13:37.027 に答える