Такая ситуация. Есть сервер, на котором PHP запускался под wwwdata, без suPHP и все с этим связанные приятности. Попросила провайдера, чтобы поставил suPHP, сделал.
Я выполнила:
chown -R user:user /my/root/directory
chmod -R 755 /my/root/directory
Сегодня заметила, что не работают скрипты, в которых создаются файлы и папки. Порылась. Оказывается новые папки создаются c правами 700, а новые файлы с правами 600. Естественно в браузере ни те ни другие недоступны. Нужно, чтобы автоматически было 755.
Нужны настройки для всего сервера, слишком много скриптов, чтобы мучиться с umask теперь. Не могу найти, где это поставить можно.
Есть сервер, есть вход root, есть даже confixx, головы нет ;D
---------------------------------
EDIT: нашла /etc/suphp/suphp.conf , поменяла в нем Umask с 0077 на 0022. Теперь новые файлы создаются с 644, новые папки с 755.
Но проблема осталась с GD2 функцией imagejpeg, этот хрен при создании "тумбинашек" (c) делает права 600 ... ???
Права созданных PHP файлов и папок
Права созданных PHP файлов и папок
Last edited by Sonya on Thu Jun 25, 2009 5:57 pm, edited 1 time in total.
Re: Права созданных PHP файлов и папок
0022ZYV wrote: umask по ssh что даёт?
(если rootом смотреть)
Стоп, там не imagejpeg, там что-то другое хандрит, но пока не пойму что. Если картинка не уменьшается (в оригинале мелкая), то все нормально с тем же imagejpeg, а вот с тумбинашками не получается...
Last edited by Sonya on Thu Jun 25, 2009 6:59 pm, edited 1 time in total.
Re: Права созданных PHP файлов и папок
Нашла бяку, не понимаю, почему так:
1. Загружается картинка и сохраняется при помощи imagejpeg (OK)
2. Если картинка больше, чем надо, создается тумбинашка (OK)
3. Если создалась тумбинашка, то в imagejpeg создается файл с тем же именем (по сути картинка перезаписывается)
Вот, в этом третьем шаге какая-то проблема. Если картинка НЕ существует, то права присваются 644, если пишется "поверх" существующей, то 600. Вставила туда unlink, проблема решилась. Правда, не понимаю каким образом перезапись файла влияет на его права... Мучает меня линукс, ох, как мучает.
1. Загружается картинка и сохраняется при помощи imagejpeg (OK)
2. Если картинка больше, чем надо, создается тумбинашка (OK)
3. Если создалась тумбинашка, то в imagejpeg создается файл с тем же именем (по сути картинка перезаписывается)
Вот, в этом третьем шаге какая-то проблема. Если картинка НЕ существует, то права присваются 644, если пишется "поверх" существующей, то 600. Вставила туда unlink, проблема решилась. Правда, не понимаю каким образом перезапись файла влияет на его права... Мучает меня линукс, ох, как мучает.
Re: Права созданных PHP файлов и папок
Так не рутом, разумеется, а тем пользователем от которого запускается php. На это есть замечательная команда su.Sonya wrote: 0022
(если rootом смотреть)
Я вообще думал, что imagejpeg - это функция GD2. Че-то я не понял, зачем вообще пункт 3, если всё уже создано.
Перезапись не должна влиять, только если процессы не были запущены в разное время до и после смены umask. Ты, надеюсь, перезагружалась после внесения своих изменений?
unsigned double ZYV;
Re: Права созданных PHP файлов и папок
Видишь, как все запущено.ZYV wrote: Так не рутом, разумеется, а тем пользователем от которого запускается php. На это есть замечательная команда su.
Да, GD2. Пункт третий выполняется в скрипте только, если загруженная картинка превышает максимально допустимый размер превьюшки. Т.е. в первом пункте картинка сохраняется как есть, а в третьем пункте перезаписывается, если слишком большая.ZYV wrote: Я вообще думал, что imagejpeg - это функция GD2. Че-то я не понял, зачем вообще пункт 3, если всё уже создано.
Это логично. Поэтому я в глубоких раздумьях почему мой сервер нелогично поступает. Причем так непотребно себя вести, он стал с переходом на suPHP.ZYV wrote: Перезапись не должна влиять...
Сейчас я открою тебе страшную тайнуZYV wrote: Ты, надеюсь, перезагружалась после внесения своих изменений?

Re: Права созданных PHP файлов и папок
Мда, кривоватый алгоритм, но работать-то должно в любом случае.Sonya wrote: Да, GD2. Пункт третий выполняется в скрипте только, если загруженная картинка превышает максимально допустимый размер превьюшки. Т.е. в первом пункте картинка сохраняется как есть, а в третьем пункте перезаписывается, если слишком большая.
Если честно --- понятия не имею что такое confixx. Но есть такая волшебная команда rebootSonya wrote:Сейчас я открою тебе страшную тайну: Я не знаю, как перезагрузить сервер. У меня в confixx стоит, что вебсервер автоматически перезагружается каждые 2 минуты.

unsigned double ZYV;