Обновлял сайт на хостинге "Джинс" до версии 7.21 и напоролся на целую череду проблем:
При обновлении модулей:
Updating modules and themes requires FTP access to your server
При включении агрегации css/js:
Тех. поддержка была немногословной: https://www.jino.ru/support/faq/ftp/
Сверился с настройками прав на другом сайте (размещенном на ит-патрол), вроде все совпадает, но там все работает без ошибок.
Гугл говорит, что проблема с агрегацией решается установкой 777 на папку default/files. Но мнения о том, на сколько это безопасно - противоречивы.
Товарищи, подскажите, пожалуйста, правильные file permissions.
Комментарии
Обычно папки 755, файлы 644
Алексей, спасибо за отклик! Именно такие и стоят, за исключением settings.php, для которого 444. Но обе проблемы остались
Дело в том что да некоторые хосты говорят ставьте 777 , но я бы казал им - сделайте чтобы работало на 755
а в install.txt написано :
"mkdir sites/default/files
chmod a+w sites/default/files"
На заборе тоже много чего написано ...
если не хотите следовать официальной документации ,то
вот здесь всё о правах грамотно расписано
У меня проблем нет
Все верно, проблемы у меня
drupby, спасибо за презентацию, очень интересно и весело, хотя вроде как и не до смеха. Вроде гуглил не один час, а на такую классную презентацию так и не наткнулся.
Попробовал установить на sites/default/files права 777 (а потом еще на всякий случай на sites/default/files/css и sites/default/files/js) - не помогло.
Заметил что не было временной папки. Указал в настройках admin/config/media/file-system путь /tmp. В корне появилась папка с правами 775. Опять попробовал вариант с 777 для files - все равно при включении агрегации вылетают ошибки записи файлов.
Очень смущает надпись "Обновление модулей и тем требует FTP доступа на ваш сервер." на странице /admin/modules/update. Может все из-за этого?
а я бы свалил от этого хостера - больше времени и нервов потратите на настройку , тем более совершенно не разбираетесь в администрировании
грамотная настройка описана тут:
https://drupal.org/node/244924
https://drupal.org/documentation/install/settings-file
Очень не плохой скрипт был дан в комментарии... https://www.drupal.org/node/244924#comment-6600078
Изменил и доработал его под себя:
echo "Начинаю изменение прав..."
echo "Устанавливаю владельца www-data для всех папок и файлов"
chown -R www-data:www-data './'
echo "Выставляю права 755 для всех папок"
find './' -type d -exec chmod 755 {} \;
echo "Выставляю права 644 для всех файлов"
find './' -type f -exec chmod 644 {} \;
echo "Выставляю права 440 для .htaccess"
chmod 440 './.htaccess'
echo "Выставляю права 775 для tmp"
chmod 775 './tmp'
echo "Выставляю права 440 для tmp/.htaccess"
chmod 440 './tmp/.htaccess'
echo "Выставляю права 775 для sites"
chmod 775 './sites'
echo "Выставляю права 775 для sites/default"
chmod 755 './sites/default'
echo "Выставляю права 775 для sites/default/files"
chmod 775 './sites/default/files'
echo "Корректирую права g+w для поддеррикторий sites/default/files"
chmod g+w -R './sites/default/files'
echo "Выставляю права 440 для sites/default/files/.htaccess"
chmod 440 './sites/default/files/.htaccess'
echo "Выставляю права 440 для sites/default/settings.php"
chmod 440 './sites/default/settings.php'
echo "Выставляю права 440 для sites/default/default.settings.php"
chmod 440 './sites/default/default.settings.php'
echo "Выставляю права 775 для sites/all/themes"
chmod 755 -R './sites/all/themes'
echo "Выставляю права 775 для sites/all/modules"
chmod 755 -R './sites/all/modules'
echo "Выставляю права 775 для sites/all/libraries"
chmod 755 -R './sites/all/libraries'
echo "Изменение прав закончил! Убедись, что всё верно..."
1. Скопируйте код скрипта и сохраните под названием "permissions.sh". Соблюдайте кодировку UTF-8 (для нормального отображения кириллических символов в комментариях echo командной строки) и UNIX формат окончания строк (иначе получите /R в конце каждой строки):
2. Скопируйте файл permissions.sh в корень вашего сайта Drupal 7:
3. Перейдите в корень вашего сайта:
4. Выполните команду:
PS: Если у вас "чистый" Drupal, то некоторые папки, например libraries или files, ещё могут быть не созданы. Так же если вы используете папку tmp вашей ОС, то в вашем Drupal её не будет. В этом случае выведется ошибка, что файла или папки не существует - это нормально. Рекомендую пользоваться скриптом на финальных этапах разработки или при переносе на хостинг, когда вся структура файлов и папок уже создана.
PSS: Работа скрипта многократно проверена на Drupal 7 сайтах в ОС Debian 7 Wheezy.