- ベストアンサー
strict.pmの配布サイトはどこにあるのか?
- ローカル環境ではstrictをダウンロードしている記憶はないので、strict.pmはおそらく標準モジュールです。
- さくらインターネットを借りようとしている際、use strict;を書くとInternal Server Errorが発生する問題があります。
- XML::XPathなど他のモジュールはhttp://theoryx5.uwinnipeg.ca/ppms/からダウンロードしてuse lib 'で使えるようになっていますが、strictだけ見つかりません。strict.pmを配布しているサイトをご存じの方は教えていただけますか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
標準パッケージで、libにあると思います ローカル環境で見つかると思いますが。
その他の回答 (1)
- yuuki0229
- ベストアンサー率70% (33/47)
まずstrictは一般的に配布されているようなモジュールとは違い、(大雑把に)Perl内部に影響を与えるプラグマモジュールというものです。 全て小文字の名前ならプラグマです。 そして、strictの場合何が変わるかというとコーディングに厳格なルールを設定します。 それに沿わなければエラーとなります。 もし use lib ' をそのまま書いてるならこっちが原因です。 どちらにせよエラーメッセージはHTTPサーバのエラーログに記載されています。 use CGI::Carp 'fatalsToBrowser'; でブラウザからエラーを確認することもできます。
お礼
#!/usr/local/bin/perl use strict; print "Content-Type: text/html\n\n"; use strict; の1行だけでエラーになります。 運用する予定のコードは、 ローカルと他のレンタルサーバーでは動いたので コードの問題ではないきがしています。 さくらではコメントにすると動きますが・・・なるべくならコメントにはしたくないのです・・・ 他のと同様に libパスにローカルのstrict.pmを送ってみましたが やはりエラーになるので さくらでstrictを使うには特別な設定がいるのかなぁと・・・
補足
strict をコメントにすると 問題なく動作しています。 ここにかいたものは、便宜上'以降の パスを省略しているだけで use libは問題なく動作しています。 strict を使いたいので、 質問をしました。
お礼
エラーになるので コード内のstrictは全部コメントにしました。 サーバー側で使えない設定にしてあるのかも しれないです・・・
補足
レンタルサーバー側の問題だったようです。 年末 確認コードをいれて確認しましたら 使えるようになっていました (他の方が苦情をいれたのかも?) /usr/local/lib/perl5 の下位フォルダにstrict.pmが入っていることが確認できました 以前は、strict.pmが、はいっていませんでした。