あるサーバにperlで書いたcgiがあるのですが、
一部を書き換えると正常に動いていたのに動かなくなります。
書き換えなくても、正常なファイルをコピーして
ファイル名を変えてアクセスするだけでもダメです。
これについて考えられる原因を教えてください。
気になっていることは、
FTPソフトでアクセスした際に表示される
ファイル毎に設定されたオーナーとグループと言う項目です。
この設定について私は意味を知っていません。
正常に動くcgiをコピーすると、このオーナーとグループの設定は引き継げず
アクセスするとエラーになります。
(Internal Server Error)
これは問題の原因でしょうか。
よろしくお願いします。
http://www2d.biglobe.ne.jp/~gama/cgi/step00-1.htm
権限ですね。
実行できる権限や読み取りができる権限などを 個別に設定できたりします。
FTPソフトに属性の変更 という 箇所がありませんか?
それで 設定できれば、設定できます。
設定できなければ、使用しているアカウントに 属性の変更の権限がないので
管理者にその権限をもらうか、管理者に属性を変更してもらうしかないです。
まず編集時のユーザー名と、実行されてる Apache のユーザー名が違うことに注目してください。
すいません。
もう少しわかりやすく教えてください。
注目してどうすればよいのでしょうか。
お願いします。
>まず編集時のユーザー名と、実行されてる Apache のユーザー名が違うことに注目してください。
サーバーにログインする時は質問者であるworldtravelさんのユーザー名(ID)とパスワードでログインすると思います。
その時に作ったファイルのオーナーは「worldtravelさんのユーザー名(ID)」になります。
「worldtravelさんのユーザー名(ID)」がオーナーのファイルは「worldtravelさんのユーザー名(ID)」だと実行、編集ができますが、
他のユーザーは(アクセス権を与えていないと)実行できません。
サーバーアプリのapacheも同じ用にユーザーIDが与えられています。
CGIがapacheから実行される時は、アパッチのユーザーIDがそのCGIを実行できるようにする必要があります。
恐らくapacheのユーザーIDにCGIが実行権限を与えていないか、apacheのグループにCGIの実行権限を与えていないのだと思います。
そのサーバーは管理者にCGIの設置を依頼するタイプでしょうか?
ありがとうございます。
意味がわかりました。
頼まれて作ったcgiを設置しようとしているので
管理者に設置を依頼するタイプかどうかはわかりません。
作った私が教えて頂いたアカウントで設置しようとすると
動かなくなると言う状態です。
しかし、正常に動いているcgiもあります。
それは恐らく権限が与えられていると言うことですね。
頼んできた本人に確認してみます。
回答者 | 回答 | 受取 | ベストアンサー | 回答時間 | |
---|---|---|---|---|---|
1 | takano32 | 58回 | 45回 | 5回 | 2009-07-15 18:36:14 |
変更の権限はないです。
試みましたが拒否されました。
変更したい場合は管理者にお願いするしかないです。
確認なのですが、こういうサーバの設定の場合、
権限のない人がファイルを開き、一部を修正して保存するだけで
このように動かなくなってしまうのが正常なのでしょうか。
よろしくお願いします。
あっ 権限とはパーミッションのことですか?
これなら変更できます。
しかし、755、705でも動きません。
755で動いているcgiを開いて、何も変更しなくても
保存し直すだけで動かなくなります。
変更できないのはオーナー名とグループ名です。