タイトル | : モジュールをどうこうしても駄目でしたね |
投稿日 | : 2012/04/14(Sat) 07:05 |
投稿者 | : おやじ |
> stranger様。おやじ様。のアドバイス通り色々と調べてみました結果、
> 「/usr/lib/apache2」に「suexec」ファイルがあるのを偶然、見つける事が出来ました。
> どうやら「VineLinux」ではコマンドでsuexecへのリンクはされていないようです。
> (もしかしたら私がVineの認識不足なのかもしれませんが)
確かに変わったところにありますね。パスが通っていなので「/usr/lib/apache2/suexec -V」で内容は表示できます。
> いずれにしても、「suexec」の削除で無事にCGIが動く事を確認できました。
おやじも暫くsuEXECで悩んでいなかったので忘れていましたが、suEXECは"wrapper"なのでsuexecがあれば動いてしまうので、モジュールをどうこうしても駄目でしたね。
ちなみに、renameではなく本当に削除してしまったのですか? 戻すとしたらインストールしなおしですか?
確かに、suEXECは面倒で、おやじもVirtualHostでいろいろなドメインを動かしているので、SuexecUserGroupでCGIが実行されるユーザとグループを指定しないとうまく動きません。
更に言えば、suEXECはPHPには効かないので中途半端な気もしますが、保険ということでおやじは動かしています。
因みに、おやじはいざという時のバックアップ用に別サーバを置いて、現用コンテンツをバックアップコピーしています。テストは万が一のことを考え、このバックアップ側でやっています。(バグでサーバを壊すこともあるので・・。実はやったことがあるので、現用機は極力触らないようにしています。)これなら、テスト中に外部からアクセスされることもないですし。(現用機でやる場合なら、.htaccessで規制する方法がありますが)テストは正に、テストユーザを作って必要なファイルを現用データからコピーしてやっています。これは、ディレクトリ階層等をそのまま保つためです。
> パスを変更する理由は「ユーザーを追加」した場合、「public_html」以外にユーザー追加のさいに作られる初期フォルダフォルダが一緒に表示されてしまい、FTP転送時に「public_html」を探すのに戸惑ってしまいます。
これなら、「/etc/skel」の中身をどこかにバックアップして全て削除(public_html以外)してしまえば、余計なものは作成されませんよ。
> ならばサーバーのFTPデーモン(ProFTPD)で「DefaultRoot ~」で制御を掛ければ良いのですが、「CGIやPHPテストとバックアップ用にサーバーを立てたい」と思って立てましたので、「public_html」フォルダ以外も使用しています。
> それで、思ったのが「/home/*/public_html/」から一層下にフォルダを作って「/home/*/「任意フォルダ/public_html/」に「ProFTPD」で「DefaultRoot ~/任意フォルダ/」としてしまえば良いのではないか?と考えた次第です。
やはり一層下にする意味がわからないですね。そもそも1ユーザしかいないならわざわざUserDirでやらなくても、DocumentRootでもいいような気もしますし・・・。