Unix: перезапись файла, записанного другим пользователем в той же группе

Я очень не хочу сказать это, но Вы, кажется, задаете неправильный вопрос.

Это не о том, чтобы мешать Apache снизить Ваш сервер, это - о наличии Вашей подачи веб-сервера больше запросов в секунду - достаточно так, чтобы у Вас не было проблемы. Часть ответа на переобрамленный вопрос затем ограничивает Apache так, чтобы это не отказывало при высоких загрузках.

Для второй части, которой, Apache имеет некоторые пределы, которые можно установить - MaxClients, являющийся важной конфигурацией. Это ограничивает, сколько детей позволяется работать. Если можно взять загрузку от Apache для продолжительных процессов (большие файлы, загружаемые, например), это - другой слот в Apache, чтобы смочь служить PHP. Если загрузки файла должны быть проверены уровнем PHP, они могут все еще сделать это и пасовать назад к более оптимизированному веб-серверу для статического содержания, такой как с NginX sendfile

Между тем разветвляя Apache каждый по каждому запросу на самый медленный способ выполнить PHP - как CGI (безотносительно апачского MPM можно использовать) - также имеет машину, тратят большое количество времени, не выполняющего код. mod_php значительно более оптимизирован.

PHP может сделать огромные объемы трафика, когда Apache и уровень PHP соответственно оптимизированы. Вчера, 11-го декабря 2010, например, пара серверов PHP, которые я выполняю, сделала почти 19 миллионов хитов в период с 24 часами и большую часть из этого в 7:00 - 20:00 периода времени.

Существует много других вопросов здесь и статьи в другом месте об оптимизации Apache и PHP, я думаю, что необходимо считать их сначала, прежде, чем обвинить Linux/Apache & PHP.

1
задан 12 February 2013 в 09:19
2 ответа

Вы можете изменить режим каталога на setgid, чтобы гарантировать, что новые файлы будут создаваться с той же группой, что и владелец каталога. См. Эту статью для получения дополнительной информации: http://en.wikipedia.org/wiki/Setuid .

Команда: chmod g + s / path / to / directory

0
ответ дан 4 December 2019 в 09:24

Когда пользователь создает файл, разрешения по умолчанию не разрешают запись в группу. Вам нужно изменить umask , чтобы вновь созданные файлы имели права на запись для группы:

umask 0002

Чтобы узнать текущую umask, запустите ее без аргументов.

См. man umask ] для получения дополнительной информации.

0
ответ дан 4 December 2019 в 09:24

Теги

Похожие вопросы