• 締切済み

こんにちは(初質問です)

こんにちは(初質問です) いままでは順調だったのですがテストをしていると・・・ 新規登録画面 名前 メールアドレス 希望ID 各項目を入力して送信すると以下のようなエラーが出て・・・ Open Error: /home/user/private_html/protect/.htpasswd こまっています 内部調査では大まかに・・・ # IDの重複チェック local($f) = 0; open(IN,"$pwdfile") || &error("Open Error: $pwdfile"); while (<IN>) { local($id) = split(/:/); if ($in{'id'} eq $id) { $f++; last; } } close(IN); if ($f) { &error("$in{'id'}は既に発行済です。<br>他のIDをご指定ください"); } このプログラムの・・・ open(IN,"$pwdfile") || &error("Open Error: $pwdfile"); ここの部分が表示されてるようです もちろんテスト中なので公開もしてないし・・・ おなじIDとかももちろんないです あとすこしでできるのでおねがいします>< ついでに 通常はyahooを利用するのですがトラブルが起きてるみたいで つかえなかったのでここでしてます^^;

みんなの回答

  • YkazubonY
  • ベストアンサー率30% (26/86)
回答No.3

エラーの詳細原因が$!変数に入っているので、これを表示してみたら対策が出来ると思います。

回答No.2

>ファイルを確認してみましたがちゃんとありました >名前もあってます ファイルがあるかどうかじゃなくて『指定したパスにファイルがあるかどうか』が重要です。 >/home/user/private_html/protect/.htpasswd 確実にこのパスにそのファイル(.htpasswd)があるかどうかを確認してみてください。 /で始まるパスの指定の意味がわからないのであるならば、「$pwdfile」の値を相対パスにしてみるのもひとつの方法です(「パス」の意味がわからないのであるならば、諦めてください。これが理解できない場合は Perl に限らずあらゆるプログラムを理解することができません) あと#1さんもおっしゃってますが、ファイル権限も一応疑ってみて。

  • taka37777
  • ベストアンサー率30% (166/544)
回答No.1

/home/user/private_html/protect/.htpasswd というファイルが無い、オープンする権限が無いとか確認されてはどうでしょうか?

8n71
質問者

補足

記入すべきところまちがってたらすいません^^; ファイルを確認してみましたがちゃんとありました 名前もあってます private_htmlのファイルとかはないですが・・ フリーでプログラムが配布されててダウンロードをするのですが このようなファイルはなかったです 

関連するQ&A