• 締切済み

CGIが改造できない。

業者に頼んだCGIがあるのですが、改造のしかたがわかりません。 一行だけ改行を付け加えたりしたものをUPするとエラーを出します。 またコメントをつけようとしてもエラーを出します。 一度改行した部分を消してUPしても、またエラーを出してしまいます。 パーミッションが書き換わってるわけでもなさそうでした。 エラーは500でした。 CGIは初心者に等しいので、何か見落としているのかもしれませんが なにか他人に改造されないように制限する方法などがあるのでしょうか? 頼んだ業者を覚えてないようで、作った人に連絡を取ることができないんです。 もし、わかる方がいらっしゃいましたら。よろしくお願いします。 CGIの内容としては、同じフォルダ内のHTMLをロードし そのHTMLの中にCGIが計算した結果をテーブル状に吐き出す といった形のものです。私はメモ帳を使っています。

みんなの回答

  • wolfwood
  • ベストアンサー率50% (199/398)
回答No.3

CGIで使用している言語はPerlでよろしいでしょうか? 文法、パーミッション以外にチェックが必要なのは文字コード、改行コードとなります。 メモ帳で日本語が文字化けしていないということは文字コードはShift-JISかJISあたりだと思います。 他のファイルの文字コードと統一されているなら一応は大丈夫かと思います。 また、FTPでアップロードするときアスキーモードで転送していないと改行コードの問題でCGIが動かないことがあります。 とりあえず、FTPの転送設定を確認して、バイナリモードの場合、アスキーモードにしてもう一度アップロードしてください。 あと、ダウンロードの設定で文字コードが変わるような設定があるかもしれないのでご使用のソフトを確かめてください。 CGIのファイルを編集するなら無料のエディターを使うことをお勧めします。 以下のサイトで色々紹介されていますが、 NoEditor TeraPad サクラエディタ あたりが良いかと思います。 http://cooltool.jp/free-editor.html おせっかいついでにグーグルで「500 エラー CGI」のようなキーワードで検索した結果の1ページ目のサイトだけでも 目を通せば上記で書いたことと同じことが書かれていますので試してみてください。 http://www.google.co.jp/

akira212
質問者

お礼

みなさん、ありがとうございました。 何種類かエディタを使ってみたのですが、うまく行かなかったので 新しく作り直すことになりそうです。orz

akira212
質問者

補足

ありがとうございます。 いちおう500エラー集というのには目を通して、転送モードや、文字コードは確認してはいたのですが・・・ 改行コードについては思いつきませんでした。きっと読み飛ばしてたのかも。すみません。 でも、別のCGIをメモ帳で同じように改造してUPすると普通に動くみたいで・・・ ほんとにすみません。回答ありがとうございます。 一度、無料エディタ使ってみますね。

  • galluda
  • ベストアンサー率35% (440/1242)
回答No.2

がると申します。 とりあえずまず「なにか他人に改造されないように制限する方法など」は「ない」です。 で、500のエラーということは、プログラム自体が何らかのエラーを抱え込んでる、ということになります。 改行コードなどのお話はすでに#1さんがなさっているので割愛させていただきます。

akira212
質問者

補足

ありがとうございます。 ファイルがいくつもあるタイプだったので。やろうと思えば 容量制限をどこか別のファイルで指定することもできるのかなー?と思っていました。

回答No.1

詳しくエラーが書かれていないので、 私の経験で書かせていただきます。 まず、akira212様が行ったことをまとめると、 これまで動いていたものをメモ帳で開き、 改造し保存。 サーバにアップロードして動かなくなった。 そして、改造したところを元に戻して保存して、 再度サーバにアップロードしても動かない。 ということだと思います。 このことから判断すると、 保存するときに誤った改行コードで保存したのでは? と思います。 サーバの環境によって、 改行コードが違ってきますので、 ここでは書けません(コレにすると良いとは書けません)が、 一度確認されたほうがよいかと思います。 そして、改行コードが違うならば、 多分メモ帳では解決できないので、 別のテキストエディタ(秀丸など)を購入し、 変更したほうがよいかと思います。

akira212
質問者

補足

改行コードが、サーバーによって違うということであれば 他のCGIも私が改造すると動かなくなるということですよね? それは思いつきませんでした。確認してみますね。ありがとうございます。

関連するQ&A