Правильные разрешения файловой системы для установки Joomla на Linux

Мой вопрос довольно общий. Предположим, у меня есть веб-сервер распространения Linux, с /var/www/ это веб-каталог. Я использовал свою учетную запись суперпользователя для загрузки и распаковки установки Joomla .zip папка.

Пользователь Linux-системы для веб-пользователей называется www-data, Во всяком случае, мой вопрос: кто должен быть ONWER файлов в системе Linux? Прямо сейчас, поскольку я использовал свою учетную запись суперпользователя для распаковки файлов, все папки и файлы принадлежат суперпользователю, и поэтому они отображаются в системе администратора joomla как недоступные для записи. Я просто немного не решаюсь установить www-data Пользователь как владелец файлов. Это нормально?

Просто для справки, в Linux я бы поменял владельца папок и файлов с помощью chown и изменить группу с chgrp,

Спасибо!

2 ответа

Решение

Нормально Используйте www-данные как владельца и группу:

cd /var
chown www-data:www-data www

Нет необходимости использовать chgrp.

Это очень опасно иметь всю Joomla! файлы и каталоги, доступные для записи для веб-сервера. Если есть какая-то ошибка в Joomla! или в каком-либо расширении злоумышленник сможет удалить / изменить / удалить любой файл с помощью случайного эксплойта (используя ошибку в коде PHP). Вместо этого все файлы должны быть доступны для чтения только веб-серверу (то есть: владелец должен быть пользователем root или обычным пользователем), а все разрешения должны быть 755 для каталогов и 644 для файлов. Только каталог кеша должен быть доступен для записи на сервере www (если вы используете кеширование). Так что-то вроде этого должно быть выполнено для всего каталога Joomla (для Ubuntu & spol.):

cd /var/www/whatever-your-joomla-root-dir-is find . -type f -exec chmod 644 {} \; find . -type d -exec chmod 755 {} \; chown -R www-data .

Подробнее о правах на Unix читайте в http://forum.joomla.org/viewtopic.php?t=121470

Вам может потребоваться изменить каталоги с расширениями или шаблонами так же, как каталог кеша, только на время установки / удаления одного из них, а затем снова сменить владельца.

Для Fedora, CentOS, RHEL, Scientific Linux и т. Д. Команда должна быть:chown -R apache .

Вместо смены владельца (это может быть сделано только от имени пользователя root) вы можете просто активировать разрешение на запись для других с помощью этой команды (а затем вернуть обратно, передав o-w к той же команде):

chmod -R o+w cache

Другие вопросы по тегам