ロリポップなどのサーバーで所有者がApacheなどになってしまいFTPで削除できないファイル・フォルダを削除する方法
所有者ApacheになってFTPから消せないファイルの削除
フォルダの中を再帰的に削除するPHPスクリプトロリポップなどのレンタルサーバーでPHPまたは、Perlなどのサーバーサイドのプログラムからフォルダ・ファイルを生成すると
所有者「Apache」または、「root」、「admin」となってしまいFTPからアクセスできなくなってしまうことがある。
※以下、所有者「Apache」として説明
理由は、FTPのアカウントとPHPのアカウント違うがphpスクリプトから削除する方法をメモしておきます。
所有者「Apache」または、「root」、「admin」となってしまいFTPからアクセスできなくなってしまうことがある。
※以下、所有者「Apache」として説明
理由は、FTPのアカウントとPHPのアカウント違うがphpスクリプトから削除する方法をメモしておきます。
例えば、 /access フォルダを削除するには、rmDirectoryの引数を次のようにする。(ロリポップの場合)
sub.jp4rmt は、ユーザーによって異なるので環境によって書き換えること。
/home/sites/lolipop.jp/users/sub.jp4rmt/web/access
このスクリプトを適当なところにアップロードしてブラウザから実行すれば、
所有者Apacheで消えないファイルやフォルダを削除することができる。
※使い終わったら安全上の理由からもスクリプトは、削除しておいたほうが良いです。
フォルダの中を再帰的に削除するPHPスクリプト
umask(0);
rmDirectory('/home/sites/lolipop.jp/users/sub.jp4rmt/web/access');
function rmDirectory($dir){
chmod($dir,0777);
if ($handle = opendir("$dir")){
while (false !== ($item = readdir($handle))){
chmod("$dir/$item",0777);
if ($item != "." && $item != ".."){
if (is_dir("$dir/$item")){
rmDirectory("$dir/$item");
}else{
unlink("$dir/$item");
}
}
}
closedir($handle);
rmdir($dir);
}
}
印刷用ページとして表示しています。
このページを印刷するには、ここをクリックしてください。
通常の表示に戻るには、ブラウザの更新ボタンかF5キーを押してください。
このページを印刷するには、ここをクリックしてください。
通常の表示に戻るには、ブラウザの更新ボタンかF5キーを押してください。
コメント
名前
Webサイト、ブログのURL
コメント
投稿する内容をよく確認して送信して下さい。
コメントは、まだありません。
トラックバック
トラックバックURL
コメント
トラックバックURLと内容をよく確認して送信して下さい。
トラックバックは、まだありません。
サイト情報(連絡先・リンクについて) (C)2007-2008 PC Memo ALL Rights Reserved. 今日:5 総合:5