CGI-BBS > 電子掲示板 > その他 > 「簡易履歴板」で、エラー表示が出ます。


カレッヂ
カレッヂ


質問者 Duke  投稿日 4/28(土) 15:09:42
初めまして、よろしくお教え下さい。

WebARENAにて、「簡易履歴板」を設置致しましたが「history.html」がIEで表示させると
エラー表示が出てしまいます。FTPでファイルを落とすと、正常に表示できるのですが...
パーミッション、Perlのパス等の設定は、間違えていないと思います。

http://www.duke-pacific.com/cgi-bin/history/history.cgi
です。よろしくお願いします。

(エラー表示)
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, admin@duke-pacific.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.



--------------------------------------------------------------------------------

Apache/1.3.6 Server at duke-pacific.com Port 80
回答者 中級者  [削除]  投稿日 4/28(土) 18:21:03
このエラーは明らかに設定者のミスによって出ているエラーですので次の
箇所のチェックをしてみて下さい。以下は翻訳機によって訳したものです。

サーバーが遭遇した内部サーバー・エラー(Internal Server Error)内部エラーか誤配置、またあなたのリクエストを完成することができなかったことサーバー管理者と連絡をとってください、admin@公爵-pacific.com、またth ァ(エラーを引き起こしたかもしれないエラーが生じた時およびあなたが行ったかもしれないすべてのものの縁。 このエラーに関してより多くの情報はサーバー・エラー丸木において利用可能かもしれません。)に通知する。

crypt.cgi <755> ←パスワード生成用
このファイルを使って暗号化されたものをコピーペイすとして例えば以下のように
書き込んでみてください。

26: $crypted = 'xmTC7510f7YVbo';
回答者 中級者  [削除]  投稿日 4/28(土) 18:21:03
このエラーは明らかに設定者のミスによって出ているエラーですので次の
箇所のチェックをしてみて下さい。以下は翻訳機によって訳したものです。

サーバーが遭遇した内部サーバー・エラー(Internal Server Error)内部エラーか誤配置、またあなたのリクエストを完成することができなかったことサーバー管理者と連絡をとってください、admin@公爵-pacific.com、またth ァ(エラーを引き起こしたかもしれないエラーが生じた時およびあなたが行ったかもしれないすべてのものの縁。 このエラーに関してより多くの情報はサーバー・エラー丸木において利用可能かもしれません。)に通知する。

crypt.cgi <755> ←パスワード生成用
このファイルを使って暗号化されたものをコピーペイすとして例えば以下のように
書き込んでみてください。

26: $crypted = 'xmTC7510f7YVbo';
質問者 Duke  [削除]  投稿日 4/28(土) 22:39:57
早速のご返答いただき、有り難うございます。

crypt.cgi <755> ←パスワード生成用
これに付きましては、数度確認をしております。

もう一度、テストしてみます。
質問者 Duke  [削除]  投稿日 4/28(土) 22:52:42
えーっと。自己レスです。
ログを拝見しましたら、GWにも関わらず多数の皆様が、私の問題をお考え頂いた事を、とても感謝しています。

パスコードにつきましては、早速、再度の設定を致しましたが....
状況の変化は見られません。

エラーログの一部をお知らせいたします。
[Sat Apr 28 22:39:40 2001] [error] [client 210.***.***.***] Premature end of script headers: /virtual/203.138.134.17/cgi-bin/history/history.html
(ipの一部は私の方で、変更させていただきました。)

実は、もう48時間ほど、悩んでます。
「あきらめた方が、良いのかな?」とも、思っておりましたが....
早速のご返答を頂き、有り難うございました。
回答者 中級者  [削除]  投稿日 4/29(日) 02:07:20
最初にちょっとExcuseですが重複して回答した分が削除出来なくてWebmasterに
連絡しましたところそのままで良いとのお返事でありましたのでお見苦しいですが
お許し下さい。メモリーをクリアした関係?でパスコードが合わなくなっており
ましたがその後テストして新規投稿文章より削除が出来ましたので以後の重複掲載は
無いものと存じます。重複の原因は1度目に表示しなかったので2回クリックした
為に発生したものです。どうも済みませんでした。

さてエラーの出ている原因がcrypt.cgiの暗号化のコピーベーストの不履行でない
とすればhistory.htmlがエラーになっておりますのでchmod <666>はOKでしょうか?

# (基本構成)
#
# |- history.cgi <755> ←記録用
# |- history.html <666> ←表示用HTML
# |- crypt.cgi <755> ←パスワード生成用
# |- jcode.pl <644>
質問者 Duke  [削除]  投稿日 4/29(日) 10:33:55
中級者さん、色々と有り難うございます。

さて、パーミッション等の設定は、以下の通りになっています。
# |- history.cgi <755> ←記録用
# |- history.html <666> ←表示用HTML
# |- crypt.cgi <755> ←パスワード生成用
# |- jcode.pl <644>

表示用のhtmlは、現在デフォルトの状態で cgi-bin/history/history.htmlにしています。
history.cgiで記入して、履歴(history.html)を、IEで表示させるとエラーが出て、FTPで
落とすと、ちゃんと書き込まれた状態になっています。

たびたび、すみません。
回答者 中級者  [削除]  投稿日 4/29(日) 12:49:01
Line28あたりhistory.cgiの中で以下の記述があっているかどうか?
http://www.kcb-net.ne.jp/ki-net/history/history.html
上記は当方が設定しているurlですがこの場合はオリジナルのままで有効です。

# 更新するファイル
$html_file = "./history.html";

上記のご説明のように当方の場合はこの記述で合っておりますが貴殿の以下の
分では合っているのでしょうか?
cgi-bin/history/history.html

こちらの場合の記述方法ならどうなるでしょうか?
$html_file = "./history/history.html";
自信がありませんがこの辺の調整をしてテストして見てください。
質問者 Duke  [削除]  投稿日 4/29(日) 13:19:27
中級者さん、GW中にも関わらず、色々と有り難うございます。
御HPを、とても楽しく拝見させていただきました。

さて、history.cgiのline28あたり
# 更新するファイル
$html_file = "./history.html";
で、設定してあります。

中級者さんのご指導通りに
$html_file = "./history/history.html";
にしてみましたら cgi-bin/history/history/history.htmlを、指す様になります。
フルパスで記入もしてみましたが...どうも、うまくいきません。

レンタルサーバ側の問題なのかも、知れませんね。
サーバOSのバージョン等で、違うのでしょうか?

本当に、お手数をおかけします。
回答者 中級者  [削除]  投稿日 4/29(日) 13:46:57
http://www.duke-pacific.com/cgi-bin/history/history.html
上記のurlになるように調整してみてください。

>$html_file = "./history/history.html";
>にしてみましたら cgi-bin/history/history/history.htmlを、指す様になります。

$html_file = "./cgi-bin/history.html";
この場合はどうなりますか?この辺になるとどうも自信が無くて申し訳ありません。
質問者 Duke  [削除]  投稿日 4/29(日) 13:58:50
ご指導の通り、下記の通りに設定してみました。
>$html_file = "./cgi-bin/history.html";
cgi-bin/history/cgi-bin/history.htmlを、指してしまい...ダメです。

デフォルトの
$html_file = "./history.html";で
http://www.duke-pacific.com/cgi-bin/history/history.html
を、指してくれますが...サーバエラーです。
(history.htmlは、cgi-bin/history/history.htmlに置いて有ります。)

有り難うございます。
回答者 中級者  [削除]  投稿日 4/29(日) 15:06:59
http://www.duke-pacific.com/cgi-bin/history/history.cgi
上記のurlの時に左下の方に
[履歴へ] [戻る]がありますが双方ともクリックするとエラーになりますが
その時のurlは次の通りです。

http://www.duke-pacific.com/cgi-bin/history/history.html

従って現在まで検証してきた事柄は
1.$crypted = 'xmTC7510f7YVbo';が記述されていたかどうか?
2.階層図が合っているかどうか?
3.パーミッションが合っているかどうか?
4.$html_file = "./history.html";が合っているかどうか?

その他可能性としては弱くなりますが考えられるのは
5.1行目の#!/usr/local/bin/perlが合っていなければcgiは無効になるが  
  history.cgiは表示しているので問題ないと思う...。
6. require './jcode.pl';当然ながらこれが欠落すれば全く表示しない。
7. history.htmlの中身をいじっていないかどうか?
8. history.htmlが表示しない為のエラー探しですがすみません分からない。

結論として分からない。ごめんなさい。
質問者 Duke  [削除]  投稿日 4/29(日) 18:11:35
うーん、サーバ的な問題なのでしょうか?

>4.$html_file = "./history.html";が合っているかどうか?
現在、そうなっていますので
http://www.duke-pacific.com/cgi-bin/history/history.html
になってます。

>7. history.htmlの中身をいじっていないかどうか?
当初、簡単に設置出来ると思い、オリジナルでやってみましたら動かず。
現在は、そのままのデフォルト状態で、history.htmlにしてあります。

GW中の日曜日だと言うのに、色々とおつきあいいただき
本当に有り難うございました。
回答者 中級者  [削除]  投稿日 4/29(日) 18:13:40
恐らくcgiプログラムの場所が指定されているサーバではないでしょうか?
設定上の注意事項は無かったでしょうか?今までその他の掲示板の設定は
どのようにやっていたでしょうか?

以下の階層図は当方の想像したものですが間違っていたらご免なさいね。

/cgi-bin/
      |--/history/
            |--crypt.cgi<755>
            |--history.cgi<755>
            |--jcode.pl<644>

/history/
     |--history.html<666>

当方の場合はHTML(画像を含む)とCGIプログラムが同じ場所に設置出来る
プロバイダに所属している関係ですので他のプロバイダの設定条件が分かりません
がもし別々の設定をする条件であるプロバイダであれば上述のようなcgiプログラ
ムの場所が指定されていると思いますので確認してみて下さい。
質問者 Duke  [削除]  投稿日 4/29(日) 20:14:46
たびたび、お手数お掛けします。

お教え頂きました通りに、行ってみました。
やはり、cgi-bin/の中に、history.htmlを入れるといけないようです。
現在、頂きました階層図の通りになっています。

現在以下の様に、フルパスにて設定してあります。
$html_file = "http://www.duke-pacific.com/history/history.html/";
(末尾の”/”は、付けても付けなくても、動作に変化は有りませんでした。)

結果、当初の問題は解決されましたが、次のエラー表示が出るようになってしまいました。
「エラー」
「履歴ファイルを読み出しオープンできません. 」
history.cgiの中の記述で、$html_file 以外にファイルの指定が必要なのでしょうか?

http://www.duke-pacific.com/cgi-bin/history/history.cgi
のパスワード「000000」に変えてみました。
お時間がございましたら、お試しいただけましたら幸いです。

貴重なお時間を費やして頂き、大変恐縮です。
回答者 中級者  [削除]  投稿日 4/29(日) 21:47:44
エラー
履歴ファイルを読み出しオープンできません.
を確認して参りました。

[履歴へ] をクリックするとhistory.htmlが正常に開いておりましたので
下の2種類をテストして見てください。

$html_file = "./history/history.html";
$html_file = "./history.html";
質問者 Duke  [削除]  投稿日 4/29(日) 22:07:10
早速、お試しいただいたようで..有り難うございます。

>$html_file = "./history/history.html/";
>$html_file = "./history.html";
上記の様に、試してみましたが....
結果、cgi-bin/からの、ファイル指定となり、同じ内容です。

$html_file = "/home/../history/history.html/";(現在は、この状態です。)
も、やってみました。これですと、
http://www.duke-pacific.com/cgi-bin/history/history.html
を、指定するのですが...
「履歴ファイルを読み出しオープンできません. 」が出ます。

うーん、なかなか上手く行かない物ですね。
回答者 中級者  [削除]  投稿日 4/29(日) 23:47:47
if (!open(IN,$html_file)) { &error("エラー","履歴ファイルを読み出し
オープンできません."); }

こちらのエラーが出ておりますので後は前回のテストをして貰った箇所のオリジナル
記述の方で正解かと思ったのですが後はピッタリの記述になれば正解になります。

$html_file = "./history.html";
こちらのオリジナル通りならば
http://www.duke-pacific.com/history/history.html
となって正解かと思ったのですが...。history.html<666>も再確認して下さい。
回答者 アンジェラ  [削除]  投稿日 4/30(月) 00:14:07
|--/cgi-bin/
|        |--/history/
|              |--history.cgi
|--/history/
     |--history.html
こういう階層なら
$html_file = "../../history/history.html";
です。
$html_file は、サーバ内の物理的なパス指定とURL指定の両方に使っています
ので、相対で指定しないと双方を満足できません。

質問者 Duke  [削除]  投稿日 4/30(月) 00:40:38
中級者さん、アンジェラさん色々と有り難うございます。

今だ、動きません。
アンジェラさん、ご指導の様に
>$html_file = "../../history/history.html";(現在、この状態です。)
に設定しましても...「履歴ファイルを読み出しオープンできません. 」が
表示されます。



回答者 中級者  [削除]  投稿日 4/30(月) 06:19:43
http://www.duke-pacific.com/cgi-bin/history/history.cgi
この入力のurlで書き込んだ時に

本来は履歴の
http://www.duke-pacific.com/history/history.html

へジャンプすべきところを間違って
http://www.duke-pacific.com/cgi-bin/history/history.cgi

に展開して
エラー
履歴ファイルを読み出しオープンできません.

となっている。

この辺の調整が出来ればOKです。
質問者 Duke  [削除]  投稿日 4/30(月) 14:15:39
今日も、朝早くから有り難うございます。

さて、今朝より色々と、変更してみましたが...
変化は見られません。やっぱり、パス指定に問題アリの様ですね。

しばらく、いじってみます。


回答者 中級者  [削除]  投稿日 4/30(月) 14:48:45
今回の問題と余り関係なさそうですがこの簡易履歴版で最初から妙に気になって
いる事が1つあります。

history.cgiのLine105あたり
<h3>[<A HREF="$html_file">履歴へ</A>]
[<A HREF="JavaScript:history.back()">戻る</A>]</h3>

この“履歴へ”をクリックするとhistory.htmlへ展開しますが
http://www.kcb-net.ne.jp/ki-net/history/history.cgi
この当方の展開先はhistory.htmlになっておりますが“戻る”も同じ場所に
展開しております。この件は後でチェックしてみたいとは思いますが...。

<h3>[<A HREF="./history.html">履歴へ</A>]
[<A HREF="JavaScript:history.back()">戻る</A>]</h3>
これは著者のサンプルの記述ですが“戻る”方のスクリプトは全く同じ記述ですが
当方はhistory.htmlへ戻り、著者の方は元の説明のページに戻っております。

上記2例のように展開先の違いはあってもどちらかにページの展開はありますが
貴殿の“戻る”の場合は全くクリックしても変更(どちらへも展開)が無くて無効に
なっている解せない。何故だろう?
質問者 Duke  [削除]  投稿日 4/30(月) 15:19:58
お世話になっております。
当HPは、変化が無くネタ切れの感じです。(時間を掛けて、「攻略」しようと思います。)

さて、貴HP
http://www.kcb-net.ne.jp/ki-net/history/history.cgi
>この当方の展開先はhistory.htmlになっておりますが“戻る”も同じ場所に
>展開しております。この件は後でチェックしてみたいとは思いますが...。
history.cgiを直接指定してジャンプすると、「戻る」では動作しません。

history.html→history.cgi「戻る」→history.htmlで、戻っているようです。

こちらの著者の説明ページからは
説明ページ→sistory.cgi「戻る」→説明ページに戻っています。
http://www.rescue.ne.jp/cgi/history/sample/history.cgi
著者のサンプルページです。直接指定しますと、「前」に表示していたページに
戻ります。JavaScriptで”すぐ”前のページに戻るようです。

つたない表現ですが、ご参考になれば。
回答者 中級者  [削除]  投稿日 4/30(月) 16:05:52
“戻る”とは前のページへ戻っていた事を確認致しました。(^^)

それにしても今回思惑以上に手間取って中々正常な状態になりませんが疑問な点は
全てチェックしましたのでもう1度最初から全てやり直して(Download & Install)
習熟度を高めたところで再発見があるやも知れませんのでお時間があればチャレンジ
してみて下さい。

所で当初当方がご質問を差し上げたありましたcgiの設置経験はどの位ですか?に
お答えを頂いておりませんが差し支えなければ教えて下さい。
質問者 Duke  [削除]  投稿日 4/30(月) 16:31:41
早速、有り難うございます。

>cgiの設置経験はどの位ですか?
アクセスカウンター、アクセスログ解析、掲示板、チャット等です。
いずれもフリーの物です。(各作者の方々には、感謝しております。)
他のHPにも、設置を行った事も有りますが...今回は苦労しています。(^^ゞ

私、PC歴は自分では、永い方だと思っていました。(Dos6.3, Win3.1からやってます。)
が、通信が主でしたので、プログラムに関しては、まだまだ「初心者」の域を
出ておりません。
今回の苦労で、こちらの掲示板にすがるような気持ちで参りましたが、
すぐさまご返答を頂き、とてもありがたく思っております。

確かに、ちょっと私の頭脳も「熱暴走?」を、起こしかけているようですので、
しばらく冷却して、新たにチャレンジしようと思います。


返信(回答)する


Web裏技