blog20100901

2013/08/20 - プログラミング言語 Perl にまつわる etc. - Perl monger
参考 : perldoc, perldoc.jp, search.cpan.org, perldoc.perl.org ...
「 初めての Perl 第 6 版 」(オライリー・ジャパン発行 ISBN978-4-87311-567-2) 」
「 続・初めての Perl 改訂版 」(オライリー・ジャパン発行 ISBN4-87311-305-9) 」
「 Effective Perl 第 2 版 」(翔泳社発行 ISBN978-4-7981-3981-4) 」 ... etc,.

Perl Perl_7 mod_perl 翻訳 Web Server

Perl mp2 翻訳 ユーザヘルプ (d203)

説明 : Description



This chapter is for those needing help using mod_perl and related software.

このチャプタは mod_perl と関連するソフトウェアの利用でヘルプを必要とする人たちのためのものです。
There is a parallel Getting Help document written mainly for mod_perl core developers, but may be found useful to non-core problems as well.

主に mod_perl のコアな開発者向けに書かれたドキュメント Getting Help が並行してありますが, コアでなくても役に立つ問題も見つけられるかもしれません。


問題のリポート : Reporting Problems



Whenever you want to report a bug or a problem remember that in order to help you, you need to provide us the information about the software that you are using and other relevant details. Please follow the instructions in the following sections when reporting problems.

あなたがバグや問題をリポートしたいときはいつでもあなたを助けるために, あなたが使っているソフトウェアについての情報や他の関連する詳細をあなたは私たちに提供する必要があることをおぼえておいてください。問題をリポートする時は次のセクションの指示にしたがうようにお願いします。
The most important thing to understand is that you should try hard to provide all the information that may assist to understand and reproduce the problem. When you prepare a bug report, put yourself in the position of a person who is going to try to help you, realizing that a guess-work on behalf of that helpful person, more often doesn't work than it does. Unfortunately most people don't realize that, and it takes several emails to squeeze the needed details from the person reporting the bug, a process which may drag for days.

理解しておくべき最も重要なことは問題の理解や再現をアシストするすべての情報を提供するためにあなたは努力しなければならないということです。あなたがバグリポートを準備するときに,あなた自身をあなたを助けようとする人の位置において, その親切な人にかわって推測作業をすれば, それが大抵機能するわけがないことを認識します。残念ながらほとんどの人はそれを認識しておらず, その人がリポートしたバグから必要な詳細を絞りだすためにいくつかの email が必要で, これは数日間ひきずるプロセスかもしれません。


間違った Apache/mod_perl の組み合わせ : Wrong Apache/mod_perl combination



First of all:

まず最初に:

Apache 2.0 doesn't work with mod_perl 1.0.
(Apache 2.0 は mod_perl 1.0 で動きません.)
Apache 1.0 doesn't work with mod_perl 2.0.
(Apache 1.0 は mod_perl 2.0 で動きません.

So if you aren't using Apache 2.x with mod_perl 2.0 please do not send any bug reports.

ですからあなたが Apache 2.x を mod_perl 2.0 で使っていないならどのようなバグリポートも送ることのないようにお願いします。
META: mod_perl-1.99_xx is mod_perl 2.0 to-be.

META: mod_perl-1.99xx は mod_perl 2.0 になるはず。


間違ったコンパイラの利用 : Using the Wrong Compiler



To build mod_perl, you must also use the same compiler that Perl was built with. You can find that out by running perl -V and looking at the Compiler: section. If you have used a different compiler and have encountered problems (which most likely will be the case) recompile Perl with the same compiler and then recompile mod_perl again.

mod_perl をビルドするために, あなたは Perl がビルドされたのと同じコンパイラを使う必要もあります。あなたは perl -V を実行して Compiler: セクションをみればそれを見つけることができます。あなたが違うコンパイラを使っていて問題に遭遇した場合は (ほとんどはこのケースになるはずです) 同じコンパイラで Perl をリコンパイルしてから mod_perl を再びリコンパイルします。


リポートを投稿する前に : Before Posting a Report



Before you post the report, make sure that you've checked the error_log file (t/logs/error_log in case of the failing test suite). Usually the errors are self-descriptive and if you remember to always check this file whenever you have a problem, chances are that you won't need to ask for help.

あなたはリポートを投稿する前に, あなたが error_log ファイル (テストスイートが失敗したケースでは t/log/error_log) をチェックしたかを確認してください。通常エラーは自己記述的でありあなたが問題をもったときに常にこのファイルをチェックすることをおぼえていれば, おそらくあなたはヘルプを求める必要がなくなるでしょう。


最新の mod_perl 2.0 バージョンでテストする : Test with the Latest mod_perl 2.0 Version



If you are using an older version than the most recently released one, chances are that a bug that you are about to report has already been fixed. If possible, save us and yourself time and try first to upgrade to the latest version, and only if the bug persists report it.

あなたが最新でリリースされたものでなく古いバージョンをつかっているなら, おそらくあなたがリポートするバグはすでに fix されているはずです。可能なら, 私たちとあなた自身の時間を節約して最初に最新バージョンへのアップグレードを試してください, そうしてバグが続く場合でのみそれをリポートしてください。
Reviewing the Changes file may help as well. Here is the Changes file of the most recenly released version: http://apache.org/dist/perl/mod_perl-2.0-current/Changes .

Changes ファイルをレビューすることもヘルプになるかもしれません。こちらが最新リリースバージョンの Changes ファイルです: http://apache.org/dist/perl/mod_perl-2.0-current/Changes 。
If the problem persists with the latest version, you may also want to try to reproduce the problem with the latest development version. It's possible that the problem was resolved since the last release has been made. Of course if this version solves the problem, don't rush to put it in production unless you know what you are doing. Instead ask the developers when the new version will be released.

最新バージョンでも問題が続くなら, あなたは最新開発バージョンでもその問題が再現するかを試みることもできます。最後のリリースがされた以降に問題が解決されている可能性があります。もちろんこのバージョンで問題が解決した場合は, あなたがあなたは何をしているのかを知っている場合以外それをあわててプロダクションに置かないでください。かわりに開発者に新しいバージョンがいつリリースされるかを尋ねてください。

適切な件名を使う : Use a Proper Subject



Make sure to include a good subject like explaining the problem in a few words. Also please mention that this a problem with mod_perl 2.0 and not mod_perl 1.0. Here is an example of a good subject:

少ないワードで問題を説明するような良いサブジェクトを含めるようにしてください。またこの問題は mod_perl 2.0 でのもので mod_perl 1.0 ではないことを述べるようにしてください。こちらが良いサブジェクトの例です:

Subject: [mp2] protocol module doesn't work with filters

私たちは mod_perl のバージョン 1.0 と 2.0 を同じリストでサポートするようになったのでこれは特に重要です。


インライン化したリポートを送る : Send the Report Inlined



When sending the bug report, please inline it and don't attach it to the email. It's hard following up on the attachments.

バグリポートを送るときは, それをインラインにして email に添付しないようにしてください。添付ファイルのフォローアップは厳しいです。


重要な情報 : Important Information



Whenever you send a bug report make sure to include the information about your system.

あなたがバグリポートを送信するときはいつもあなたのシステムの情報を含めるようにしてください。

  • If you haven't yet installed mod_perl and/or you are having problems with the test suite -- you should do:

    あなたがまだ mod_perl をインストールしていない and/or あなたがテストスイートでの問題をもっている -- あなたはこれをするとよいです:

    % cd modperl-2.0
    % t/REPORT > mybugreport

    where modperl-2.0 is the source directory where mod_perl was built. The t/REPORT utility is autogenerated when perl Makefile.PL is run, so you should have it already after building mod_perl.

    ここで mod_perl-2.0 は mod_perl がビルドされたソースディレクトリです。t/REPORT ユーティリティは perl Makefile.PL が走ったときに自動生成されますので, あなたは mod_perl をビルドしたあと既にそれをもっているはずです。

  • If you have already installed mod_perl and are having problems with things unrelated to the the test suite -- you should do:

    あなたが既にインストールされた mod_perl をもっていてテストスイートに関連しない問題をもっているなら - あなたはこれをするとよいです:

    % mp2bug > mybugreport

    mp2bug should have been installed at the same time mod_perl 2.0 was installed. If for some reason you can't find it, you can alternatively run the following command, which does the same:

    mp2bug は mod_perl 2.0 がインストールされたの同じときにインストールされているはずです。何らかの理由であなたがそれを見つけられないなら, あなたはかわりに次のコマンドを実行できます, これは同じことを行います:

    % perl -MApache2 -MApache::TestReportPerl \
    -le 'Apache::TestReportPerl->new->run' > mybugreport


Please post the report (mybugreport) inlined in the text of your message, and not as an attachment!

このリポート (mybugreport) をあなたのメッセージのテキストにインライン化してポストして, それを添付しないようにしてください !
Now add the problem description to the report and send it to the mod_perl users mailing list.

これでリポートに問題の説明を追加すればそれを mod_perl users mailing list に送ることができます。


問題の説明 : Problem Description



If the problem is with the mod_perl distribution test suite, refer to the 'make test' Failures section.

問題が mod_perl ディストリビューションのテストスイートの場合は, 'make test' Failures セクションを参照してください。
If the problem incurs with your own code, please try to reduce the code to the very minimum and include it in the bug report. Remember that if you include a long code, chances that somebody will look at it are low. If the problem is with some CPAN module, just provide its name.

問題があなた独自のコードによるものなら, コードをとてもミニマムに削減することを試みてそれをバグリポートに含めてください。あなたが長いコードを含めると, 誰かがそれをみる可能性は低くなることをおぼえておいてください。問題が何らかの CPAN モジュールでのものなら, その名前を提供してください。
Also remember to include the relevant part of httpd.conf and of startup.pl if applicable. Don't include whole files, only the parts that should aid to understand and reproduce the problem.

また該当する場合は httpd.conf と startup.pl の関連する部分を含めることを忘れないでください。ファイル全体を含めることはせず, その問題の理解と再現を助けるであろう部分だけにしてください。
Finally don't forget to copy-n-paste (not type!) the relevant part of the error_log file (not the whole file!).

最後に error_log ファイルの関連する部分 (ファイル全体ではないです !) のコピーアンドペースト (タイプするのではなく !) を忘れないでください。
To further increase the chances that bugs your code exposes will be investigated, try using Apache-Test to create a self-contained test that core developers can easily run. To get you started, an Apache-Test bug skeleton has been created:

あなたのコードがさらすバグが調査される可能性をさらに増やすために, コア開発者が簡単に実行出来る自己充足型のテストを作成する Apache-Test の利用をトライしてください。あなたがスタートできるようにするために, Apache-Test バグスケルトンを作成しておきました:

http://perl.apache.org/~geoff/bug-reporting-skeleton-mp2.tar.gz

Detailed instructions are contained within the README file in that distribution.

詳細な手順はこのディストリビューションの README ファイルに含まれています。

via: README in http://people.apache.org/~geoff/bug-reporting-skeleton-mp2.tar.gz


this package contains an Apache-Test skeleton that should help get you started creating a self-contained environment so that other developers can reproduce your bugs.

このパッケージは他の開発者があなたのバグを再現できるようにする自己充足型の環境の作成をあなたがはじめることをヘルプできる Apache-Test スケルトンを含んでいます。

THIS PACKAGE IS FOR mod_perl 2.0 (1.99_XX) ONLY! a mod_perl 1.0 package is available from http://perl.apache.org/~geoff/

このパッケージは mod_perl 2.0 (1.99XX) のためだけのものです ! mod_perl 1.0 パッケージは http://perl.apache.org/~geoff/ から利用可能です。

here are the specifics...

こちらがその詳細です...

t/cgi-bin is reachable via requests to /perl-bin using typical ModPerl::Registry settings. you can edit t/cgi-bin/bug.pl to your satisfaction.

t/cgi-bin は典型的には ModPerl::Registry の設定を使った /perl-bin へのリクエストを介して到達可能です。あなたは t/cgi-bin/bug.pl をあなたが満足するように編集できます。

t/My/Bug.pm is set under PerlResponseHandler using the 'modperl' handler and is reachable via requests to /bug. you may want to change the handler to 'perl-script' if you need mod_perl 1.0-type behavior. edit Bug.pm to your satisfaction.

t/My/Bug.pm は 'modperl' ハンドラを使って PerlResponseHandler のもとでセットし /bug へのリクエストを介して到達可能です。あなたが mod_perl 1.0 タイプの動作を必要とするならあなたはハンドラを 'perl-script' に変更することもできます。Bug.pm をあなた好みに編集します。

t/conf/extra.conf.in is your configuration file, exactly the same as httpd.conf. you can edit it to your satisfaction. if you are troubleshooting XS files, you may need to exchange extra.conf.in with extra.last.conf.in

t/conf/extra.conf.in は構成ファイルで, httpd.conf とまったく同じです。あなたはあなた好みにそれを編集できます。あなたが XS ファイルのトラブルシューティングをするなら extra.conf.in を extra.last.conf.in で交換する必要があります。

t/conf/modperl_extra.pl is the same as your normal startup.pl. you can edit it to your satisfaction.

t/conf/modperl_extra.pl はあなたの普通の startup.pl と同じです。あなたはそれをあなた好みに編集できます。

t/bug.t is the test script. by default it makes one request to each of /perl-bin/bug.pl and /bug. you can edit bug.t once you know what the output of your tests should look like.

t/bug.t はテストスクリプトです。デフォルトでは /perl-bin/bug.pl と /bug それぞれに 1 つのリクエストを行います。あなたのテストの出力がどのように見えるかをあなたが知ることができればあなたは bug.t を編集できます。

if you need more help with Apache-Test, take a look at the docs:

あなたが Apache-Test でさらなるヘルプが必要なら, このドキュメントをご覧ください。

http://www.perl.com/pub/a/2003/05/22/testing.html
http://perl.apache.org/docs/general/testing/testing.html

after all your edits are made, configure the tests via

あなたのすべての編集を行ったあとで, これを介してテストを構成します

$ perl Makefile.PL -apxs /usr/local/apache2/bin/apxs

if your built mod_perl as a DSO, or

あなたの mod_perl が DSO としてビルドされているか,

$ perl Makefile.PL -httpd /usr/local/apache2/bin/httpd

if you built statically.

または静的でビルドしているなら。
then, just run

そして, 実行します

$ make
$ make test TEST_VERBOSE=1

and you should be on your way.

そしてあなたはあなたの道を歩み始めるはずです。

once you get your test suite tweaked to where the bug is reproducable via 'make test', edit the MANIFEST and run

あなたが 'make test' を介してバグを再現できるようにあなたのテストスイートを修正できたら, MANIFEST を編集して実行して

$ make dist

to roll it up. after that, be sure to untar it to a different directory and test it again to make sure it is fully self-containted.

それを巻き上げます。その後に, それを必ず別のディレクトリに untar してそれが完全に自己充足型であることを確認するためにそれを再びテストしてください。
after all that, you can send mail to the mod_perl list (modperl@perl.apache.org) , preferably with a link to a place where the tarball can be found. please do not attach the tarball. thanks.

そのすべての後で, あなたは mod_perl リスト (modperl@perl.apache.org) にメールを送信できます, tarball を見つけることが出来る場所へのリンク付きだとより好ましいです。taball を添付することはしないようにお願いします。ありがとう。

--Geoff



Finally, if you get a segfault with or without a core dump, refer to the Resolving Segmentation Faults section.

最後に, あなたがコアダンプの有無に関わらずセグフォルトをゲットした場合は, Resolving Segmentation Fault セクションを参照してください。


'make test' の失敗 : 'make test' Failures



If when running make test some of the tests fail, please re-run them in the verbose mode and post the output of that run and the contents of the t/logs/error_log file to the list. Please do not post the t/logs/error_log file from make test that runs a complete test suite, as it contains a lot of irrelevant information.

make test を実行したときにテストの一部が失敗した場合は, それを verbose (# 冗長) モードで再実行してその実行の出力と t/logs/error_log ファイルの内容をリスト (# メーリングリスト) にポストしてください。完全なテストスイートを実行する make test からの t/logs/error_log ファイルはポストしないでください, それは関連しない情報を多く含むためです。
For example if 'make test' reports:

例えば 'make test' がこれをリポートした場合は:

Failed Test Stat Wstat Total Fail Failed List of Failed
------------------------------------------------------------------
compat/apache_util.t 15 1 6.67% 13
modperl/pnotes.t 5 1 20% 2

Do the following:

次を行います:

% cd modperl-2.0.xx
% make test TEST_VERBOSE=1 \
TEST_FILES="compat/apache_util.t modperl/pnotes.t"

or use an alternative way:

または代替の方法を使います:

% cd modperl-2.0.xx
% t/TEST -clean
% t/TEST -verbose compat/apache_util.t modperl/pnotes.t

In the latter approach, t/TEST -clean cleans things up before starting a new test. Make sure that you don't forget to run it, before running the individual tests.

後者のアプローチで, t/TEST -clean は新しいテストをはじめる前に物事をクリーンアップします。個別のテストを実行する前に, あなたはこれを実行することを忘れないようにしてください。
Now post to the mailing list the output of the individual tests running and the contents of t/logs/error_log.

これで個別テストを実行した出力と t/logs/error_log の内容をメーリングリストにポストします。
Also please notice that there is more than one make test being run. The first one is running at the top directory, the second in a sub-directory ModPerl-Registry/. The first logs errors to t/logs/error_log, the second too, but relative to ModPerl-Registry/. Therefore if you get failures in the second run, make sure to chdir() to that directory before you look at the t/logs/error_log file and re-run tests in the verbose mode. For example:

1 つ以上の make test が実行されることにも注意してください。最初のひとつはトップディレクトリで, 2 つめはサブディレクトリ ModPerl-Registry/ で実行します。最初のものはエラーを t/logs/error_log に記録し, 2 つめもそうですが, ModPerl-Registry/ に関連します。したがってあなたが 2 つめで失敗をゲットした場合は, t/logs/error_log ファイルを確認して verbose モードでテストを再実行する前に, そのディレクトリに必ず chdir() するようにしてください。例えば:

% cd modperl-2.0.xx/ModPerl-Registry
% t/TEST -clean
% t/TEST -verbose closure.t

At the moment the second test suite is not run if the first one fails.

今のところ最初のテストスイートが失敗すると 2 つめは実行されません。


セグメンテーション違反を解決する : Resolving Segmentation Faults



If during make test or the use of mod_perl you get a segmentation fault you should send to the list a stack backtrace. This section explains how to get the core file and extract this backtrace. Once a proper stack backtrace is obtained append it to the bug report as explained in the previous section.

make test または mod_perl の使用中にあなたがセグメンテーション違反をゲットした場合あなたはスタックバックトレースをリストに送るとよいです。このセクションはどのようにしてコアファイルをゲットしてこのバックトレースを抽出するかを説明しています。適切なスタックバックトレースが得られたらそれを前のセクションで説明したようにしてバグリポートに追加します。




If you have general Apache questions, please refer to: http://httpd.apache.org/lists.html.

あなたが一般的な Apache の質問をもっているなら, こちらを参照してください: http://httpd.apache.org/lists.html。

If you have general Perl questions, please refer to: http://lists.perl.org/.

あなたが一般的な Perl の質問をもっているなら, こちらを参照してください: http://lists.perl.org/。

For other remotely related to mod_perl questions see the references to other documentation.

mod_perl に関連性の薄い他の質問は other documentation を参照してください。

Finally, if you are not familiar with the modperl list etiquette, please refer to the mod_perl mailing lists' Guidelines before posting.

最後に, あなたが modperl リストのエチケットに不慣れな場合は, ポストする前に mod_perl mailing lists の Guidelines を参照してください。




When developing with mod_perl, you often find yourself having questions regarding other projects and topics like Apache, Perl, SQL, etc. This document will help you find the right resource where you can find the answers to your questions.

mod_perl で開発をしているときに, あなたはたびたび Apache, Perl, SQL, etc などの他のプロジェクトやトピックに関するクエスチョンを見つけることになります。このドキュメントはあなたがあなたのクエスチョンへの答えをみつけることができる正しいリソースをあなたが見つけることを助けます。


メンテナ : Maintainers


Maintainer is the person(s) you should contact with updates, corrections and patches.
  • Stas Bekman



作者 : Authors


  • Stas Bekman

Only the major authors are listed above. For contributors see the Changes file.


NEXT



次回は、mod_perl 2.0 の API「 Apache2::PerlSections - write Apache configuration files in Perl 」を「 mod_perl 」公式サイト (https://perl.apache.org/index.html) より確認します。


参考情報は書籍「 続・初めての Perl 改訂版 」, 「 Effective Perl 第 2 版 」を中心に perldoc, Wikipedia および各 Web サイト。それと詳しい先輩。

目次 - Perl Index























同じカテゴリー(Perl)の記事
 Perl mp2 翻訳 Web コンテンツ圧縮の FAQ (d228) (2023-10-11 23:49)
 Perl mp2 翻訳 既知のブラウザのバグの回避策をいくつか (d227) (2023-05-26 15:41)
 Perl mp2 翻訳 Perl と Apache でのキュートなトリック (d226) (2023-05-19 17:05)
 Perl mp2 翻訳 テンプレートシステムの選択 (d225) (2022-08-15 22:23)
 Perl mp2 翻訳 大規模 E コマースサイトの構築 (d224) (2022-06-15 20:43)
 Perl mp2 翻訳 チュートリアル (d223) (2022-06-15 20:42)
上の画像に書かれている文字を入力して下さい
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。

Llama
リャマ
TI-DA
てぃーだブログ
プロフィール
セラ (perlackline)
セラ (perlackline)
QRコード
QRCODE
オーナーへメッセージ

PAGE TOP ▲