トップ 差分 一覧 Farm ソース 検索 ヘルプ RSS ログイン

BBS-サポート掲示板/508

ページの作成や編集にはユーザ登録が必要です。

 Premature end of script headers エラー:「プラグイン設定」画面アクセス時 - TN (2006年03月17日 11時28分57秒)

 原因判明

下記の問題ですが、原因が判明し、解決しました。

最初の設定時にsetup.datを触っていたのですが、その時どうやらプラグインの格納ディレクトリを次のように変更したのが原因でした。

# プラグインを格納するディレクトリ
plugin_dir = ./plugin

デフォルトは

# プラグインを格納するディレクトリ
plugin_dir = .

のようですが、「格納するディレクトリ」と言う表現に惑わされて、他のディレクトリ設定と同様に実際のディレクトリ名を入れたところ、.\plugin\pluginを探そうとして失敗していたみたいです。

コメントの表現を例えば「プラグイン・ディレクトリを格納するディレクトリ」の方が良いのかもしれませんが、普通は手動でセットアップはしないですよね。

今回はあきさん作のsetup.cgiを使って見たところ、エラーとして 「plugin\pluginが存在しない」とのエラーが出たので判明しました。

みなさん、私みたいに「手動セットアップ」ではなく、setup.cgiを使うことをお勧めします。

参考まで。

 元々相談した内容

はじめまして、昨日このWIKIを発見し、早速インストールと試行を始めていますが、一部どうしても解決できない問題が発生しています。

管理画面から「プラグイン設定」画面をアクセスしようとすると Premature end of script headers エラーが発生しますが何か対策はないでしょうか?

(他の設定画面は問題無く参照できます。)

  • エラーログ
[error][client 10.*.*.*] Premature end of script headers: wiki.cgi, referer: http://10.*.*.*/wiki/wiki.cgi?action=LOGIN
  • 環境
    • Windows XP Professional SP2
    • Apache/2.0.55
    • Perl v5.8.7 build 815 (ActiveState)
  • FSWiki installation
    • ...htdocs/wiki/wiki.cgi

一部Apacheのhttpd.confの設定が間違っていて、作成したページを削除する時(ページの中身を削除してから保存する時)にも同様のエラーが発生しましたが、confファイルを修正し、直りました。

よろしくお願いします。

  • エラーログの内容を書いていただかないと,原因は分からないと思います. Premature end of script headersはPerlの発する汎用的なエラーメッセージです. - sakuma (2006年03月17日 14時03分57秒)
  • すみませんでした。一応Apacheのエラーログを上記に追記したのですが、他になにかあるのでしょうか?今回の追記だけではあまり情報の足しにはならないような気がします。FSWikiにエラーログがあるかと思い、logディレクトリ内を見たのですが、それらしきものはありませんでした。また、ブラウザの画面には「Internal Server Error」とApacheのデフォルトエラーメッセージが出るだけです。(このエラーに関する情報が少なくて困っているというのもあるんです) - TN (2006年03月17日 16時15分04秒)
  • このエラーの前に何かメッセージがありませんか?通常なら何かエラーメッセージを残しているはずです。もしなければ強制終了を食らっているのかもしれません。システムログ等にそれらしきものはありませんか? - typer (2006年03月17日 16時58分05秒)
  • はい、上記のエラーの前はなにもありません。一旦ログファイルの中身を空にして実施もして確認しています。あと、システムログですが、イベントビューアで確認するのでよいのでしょうか?ここにもエラー発生時刻に該当するようなものがみつかりませんでした。 - TN (2006年03月17日 23時47分45秒)
  • 症状から判断すると,plugin/admin/AdminPluginHandler.pmで起こっていると思います.エラーは,wiki.cgiの20行目ほどにあるコメントアウトを外すと,メッセージが変わりますので,お試しください. - sakuma (2006年03月18日 00時46分12秒)
  • [use CGI::Carp qw(fatalsToBrowser);]これですよね?実はこれ有効にして実行したのが上記の結果なのです。なんとなくApacheのhttpd.confの設定が怪しいような気がするので時間を探してこのconfファイルの設定を一からしようと思います。ま、今の状態ではプラグインが増やせない(?)か調整できないじょうたいですが、既にインストールされているものは動いている様子なので大きな問題ではなさそうです。(ただ、やっぱり気になります。) - TN (2006年03月18日 10時27分44秒)
  • lib/Wiki.pmの15行目の,$DEBUGを1にしてみてください.ただ,こちらは主にライブラリのエラーを標準エラー出力に出すものなので,あまり変わらないかもしれません. - sakuma (2006年03月18日 14時46分03秒)
  • 標準エラー出力ではなくて,debug.logに出てきますね. - sakuma (2006年03月18日 14時47分47秒)
  • 一度試してみます。 - TN (2006年03月22日 11時08分51秒)
  • そもそもhttpd.confをどのように記述されてるのでしょう? そこを公表していただくと手がかりになるかも? - 近江屋 (2006年03月22日 11時30分48秒)
  • 残念ながら変化はありませんでした。Apacheのhttpd.confファイルもhttpd.default.confから設定を再度やり直してみたのですが、結果は同じでした。また、Apacheをデフォルト設定でインストールしていたのでもしかしてディレクトリ名のスペースが悪さをしている可能性があるかと「C:\usr\Apache2」として再インストールもしてみたのですが、まったく同じ結果です。お手上げ状態です。 - TN (2006年03月22日 16時19分31秒)
  • 参考までhttpd.confファイルを添付しました。Windowsセットアップに記述されたとおりに設定はしたつもりです。 - TN (2006年03月22日 16時26分04秒)
  • こちらのサイトでは、WinXP+Apache+Perlのヒントになるかもしれませんね。 - A_M (2006年03月22日 18時29分41秒)
  • 求めてる答えと違うかも知れませんが、lighttpdのインストール方法を書いておきました。Apacheでどうしてもうまくいかない場合は試してみてください。すごい簡単です。 - goo (2006年03月22日 19時29分05秒)
  • Windowsセットアップってのはこれのことですよね。こちらは、Windows(2000のProfessionalですが)のインストール+当時の最新のパッチ適用の状態から、実際に書いてある方法でインストールしてみて正常に動作することを確認しています。説明を書くためにWindowsを2度インストールし直したくらいですので、内容にはそれなりに自信は有るのですが…。何が違うんでしょう。う〜ん。 - あき (2006年03月23日 08時03分41秒)
  • 文字コードはどうなってます?FSWiki関係のファイル全部がEUC-JPになってるか確認してみてはどうでしょう? - gyo (2006年03月23日 09時46分00秒)
  • はい、あきさんが作成したセットアップ手順を参照させていただきました。あまり関係ないと思いますが、今のマシンはかなり古いマシンです(とは言っても最新のSPとアップデートは全て実施しています)。現在はプロジェクトサーバのテストマシンとして使っていますが来週頃には新しいマシンが届くはずなので一度それで試してみようと思っています。この相談掲示板を見ている限りではこの現象は私だけだと思いますのでおそらくFSWikiのWindowsセットアップ手順に問題はないと思っています。 - TN (2006年03月23日 10時29分23秒)
  • Gyoさん、文字コード一度確認して見ます。 - TN (2006年03月23日 10時31分26秒)
  • 文字コード確認したところ、libの下のファイルのほとんどがShift-JISになっています。Libのサブディレクトリを全て確認できていませんが、だいたい半分ぐらい確認した所ではサブディレクトリは全てShift-JISです。Lib内のファイルではEUCファイルはWiki.pm、Util.pm、CGI2.pmの3つです。後wiki.cgiもEUCです。これって全部EUCになっているはずでしょうか? - TN (2006年03月23日 10時58分15秒)
  • lib内のファイル、Shift-JISって仰ってますが、単に漢字コード(2バイトコード)を使っていないだけで、本当はShift-JISともEUCともとれる内容だと思います。1バイトコードのみだと、Shift-JIS/EUCの区別はありません。おそらく確認されたエディタか何かが規定値でShift-JISと判定する仕組みになっているのだと思います。漢字コードを使っているのに、Shift-JISと判定される場合のみを探してみて下さい。確認が面倒であれば、もう一度FSWiki一式をダウンロードしてきて、libフォルダのみ入れ直せばOKです。 - あき (2006年03月23日 12時53分42秒)
  • 速報: たまたま別の用途で使っていたサーバ(Windows Server 2003)で(おそるおそる)Apache、Perl、FSWikiをインストールしました。一発で動き、プラグイン設定画面も初めて目にする事ができました。後は新しいマシン(Windows XP)が届き、これで問題なくインストールできれば良いのですが、とりあえずはこの件は一旦「完了」にしたいと思います。皆さん、色々とありがとうございました。今後ともよろしくお願いします。 - TN (2006年03月23日 16時20分16秒)
  • 原因が分かって良かったです。「手動でsetup.datのplugin_dir=○○を触って動かなくなっていた」というのは良くある話なんですよね。自力で解決しようとされる頑張り屋さんほどこれに直面するみたい…。(^^;) せめてコメントを改めた方が良さそうですね。>竹添殿or他のコミッタさん それにしても、「Premature end of script headers」のエラーメッセージって、ほんといい加減ですね。原因が同じでも、このエラーになる時とならない時の違いって何なのでしょう? 分かる方いらっしゃいましたら教えて頂けると嬉しいです。 - あき (2006年03月31日 13時04分37秒)
  • これFAQにしておいたほうが良いのではないでしょうか? - 名無しさん (2006年03月31日 13時39分31秒)
  • プラグインの格納ディレクトリは、表現上とまどいますね。「pluginディレクトリを格納するディレクトリ」というチョットややこしい表現が、現バージョンの正しい仕様ですね。FAQかドキュメントに追記したほうが分かり易いかも知れません。 - A_M (2006年03月31日 15時33分41秒)
お名前: コメント:
httpd.conf

最終更新時間:2010年10月19日 18時36分04秒