Невозможно перезаписать файлы

М
На сайте с 08.09.2006
Offline
223
1165

Всем привет.

Наверняка многие сталкивались с данной проблемой... Может кто-нибудь может дать совет.

Проблема в следующем.

Файлы которые были созданы путем работы пхп скрипта я не могу перезаписать через фтп, нет доступа.

То есть, например, в результате работы пхп скрипта был создан какой-то файл... Далее я хочу внести ручками в него изменения... Но вот эти изменения внести не получается : нет доступа, в результате приходиться копировать файл к себе на комп, вносить изменения, а вот далее перезаписать я имеющий файл на сервере не могу... единственное что приходиться делать, это удалять старый файл и потом записывать новый, что не очень то удобно...

Насколько я знаю это происходит из-за того, что файлам созданным путем работы пхп скрипта , присваивается другой владелец (апача, вебсервера, что типа такого).. в результате чего мне перезаписать эти файлы и не удается...

Может есть какое то решение данной проблемы?

До этого боролся с этим через шел под правами рута заходил и рекурсивно менял владельца файлам созданные пхп скриптами. Сейчас же такой возможности нет.

Не бойся неизбежного... Уже не продаю авто морды...
LineHost
На сайте с 20.01.2007
Offline
339
#1

Запросить у поддержки и все дела...

P.S. С некоторыми панельками можно выкрутится, помогает встроенный файл манагер :)

SERV.LT - Стабильные услуги хостинга, KVM VPS в Литве, Франции. (https://www.serv.lt/ru/vps/kvm/) Недорогие выделенные серверы (https://www.serv.lt/ru/dedicated-lt/) в Литве.
М
На сайте с 08.09.2006
Offline
223
#2
LineHost:
Запросить у поддержки и все дела...

Всё бы ничего, только хостинг чешский.

Связывался с тех поддержкой по ICQ, которая в принципе англйиским владеет плохо ( в чем они сразу и признались). Пытался им объяснить в чем проблема и узнать как её можно устранить, но толком никакого ответа не получил, сказали попробовать обратиться за консультаций завтра, будет другой человек....

Честно говоря, не очень то вериться что завтра ситуация будет лучше чем сегодня.

Да и эти файлы (созданные пхп скриптами ) появляются часто, которые потом править надо. Не писать же каждый раз по этому поводу в тех поддержку.

Маэстро добавил 21.11.2008 в 03:14

LineHost:
P.S. С некоторыми панельками можно выкрутится, помогает встроенный файл манагер :)

Там вся админка на чешском, сам черт ногу сломает))

Ervin
На сайте с 15.08.2008
Offline
112
#3

Как вариант - воспользоваться пхп-шным файловым менеджером, и править/менять права доступа через него :) Во многие движки такие встроены. Если нет в движке, можно сторонним воспользоваться. Лично мне вот этот понравился, достаточно функционален: http://nixbit.com/cat/system/filesystems/php-file-manager/

Хотя, думаю, гугль на запрос вроде "php file manager" много чего полезного выдаст ;)

Credendo vidas!
edogs software
На сайте с 15.12.2005
Offline
775
#4

1) Пинать хостера что бы всё настроил как надо.

2) После создания файлов/директорий скриптом, скриптом-же выставлять им правильные права. 666 и 777 или 644 и 755 соответственно для файлов и директорий. Обычно файлы создаются и директории не в таком большом кол-ве мест, что бы добавить выставление прав было проблемой.

3) Скачать http://php.spb.ru/remview/remview_2003_10_23.zip - нечто вроде файл-менеджера, но местами покруче:) Старая добрая штука. Через нее все можно будет сделать именно от имени скрипта, т.е. проблем не должно быть. Заодно хостера на предмет смешных дыр можно будет проверить, из-за чего иногда на нее антивирусник ругается:).

4) Запустить скрипт по типу этого (права только в нем выставьте какие нужно, иногда 644/755 хватает, не обязательно сразу 666/777). Сами им пользуемся на кривых хостингах, он тупой, но работает ($dirs массив в начале указывает какие директории пробовать чхмодить, работает рекурсивно, если поставить . - начнет отрабатывать от текущей).


$dirs=array();
$dirs[]='edogstpl';
foreach($dirs as $k=>$v) {
edogs_fallintodir($v);
}
function edogs_fallintodir($dir) {
if(!is_dir($dir)) return;
$dh = opendir($dir);
if(!$dh) return;
while (($file = readdir($dh)) !== false) {
if($file=='.' || $file=='..') continue;
$fname=$dir.'/'.$file;
echo $fname.'<br>';
if(is_file($fname)) {
chmod($fname,0666);
continue;
}
if(is_dir($fname)) {
chmod($fname,0777);
edogs_fallintodir($fname);
continue;
}
}
closedir($dh);
}
Разработка крупных и средних проектов. Можно с криптой. Разумные цены. Хорошее качество. Адекватный подход. Продаем lenovo legion в спб, дешевле магазинов, новые, запечатанные. Есть разные. skype: edogssoft
М
На сайте с 08.09.2006
Offline
223
#5
edogs:
1) Пинать хостера что бы всё настроил как надо.
2) После создания файлов/директорий скриптом, скриптом-же выставлять им правильные права. 666 и 777 или 644 и 755 соответственно для файлов и директорий. Обычно файлы создаются и директории не в таком большом кол-ве мест, что бы добавить выставление прав было проблемой.
3) Скачать http://php.spb.ru/remview/remview_2003_10_23.zip - нечто вроде файл-менеджера, но местами покруче:) Старая добрая штука. Через нее все можно будет сделать именно от имени скрипта, т.е. проблем не должно быть. Заодно хостера на предмет смешных дыр можно будет проверить.
4) Запустить скрипт по типу этого (права только в нем выставьте какие нужно, иногда 644/755 хватает, не обязательно сразу 666/777). Сами им пользуемся на кривых хостингах, он тупой, но работает ($dirs массив в начале указывает какие директории пробовать чхмодить, работает рекурсивно, если поставить . - начнет отрабатывать от текущей).

$dirs=array();
$dirs[]='edogstpl';
foreach($dirs as $k=>$v) {
edogs_fallintodir($v);
}
function edogs_fallintodir($dir) {
if(!is_dir($dir)) return;
$dh = opendir($dir);
if(!$dh) return;
while (($file = readdir($dh)) !== false) {
if($file=='.' || $file=='..') continue;
$fname=$dir.'/'.$file;
echo $fname.'<br>';
if(is_file($fname)) {
chmod($fname,0666);
continue;
}
if(is_dir($fname)) {
chmod($fname,0777);
edogs_fallintodir($fname);
continue;
}
}
closedir($dh);
}

Спасибо за исчерпывающий ответ. Буду пробывать.

Только вот нормально то, что на phpremoteview антивирусник ругается?

Alex Klo
На сайте с 15.06.2006
Offline
304
#6

Может поможет: попробуйте создать переменную session.save_path = ".../temp" (из php.ini) для хранения временных файлов и задайте папке temp нужные права...

Проверка и мониторинг позиций сайта ( http://www.topvisor.ru/?inv=1520 ) Продвигаю сайты http://climat-nw.ru/conditioner-installation/ http://www.aircom-spb.ru/service/montaj/

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий