Opencart права на папки: CHMOD права доступа при работе с OpenCart CMS

CHMOD права доступа при работе с OpenCart CMS

OpenCart 3

Вступление

Как вы помните, при установке Opencart есть окно проверки системы. В этом окне одна из проверок называется «Проверка прав доступа». Называются они CHMOD.

Что такое CHMOD права

CHMOD это сокращение от английского change mode (режим изменения). В программировании CHMOD относится к программе или команде задающей и меняющей те или иные права доступа к файлам и каталогам.

Вопросов не стало меньше. Кому указывает?

Атрибуты CHMOD указывает серверу, какие пользователи и что могут делать эти пользователи, с каталогами и файлами, размещенными на сервере.

Идем дальше. Какие пользователи?

В системах UNIX, в том числе Linux, всех пользователей делят по группам:

  • User: владелец каталога (файла),
  • Group: член группы, в которую входит владелец каталога (файла),
  • Other: все другие пользователи.

Когда, кто-то связывается с сервером, сервер определяет права этого пользователя и разрешает или запрещает ему действия, прописанные в правах change mode.

Например, если при установке Opencart в окне проверки системы вы увидите, что состояние файла config.php прописано, как unwritable (недоступна для записи), это значит, что права CHMOD на этот файл нужно поменять.

Значения

Давайте проясним, какие значения могут принимать атрибуты CHMOD, и что они обозначают.

Значения CHMOD могут быть только цифровые. Обычно это 3 обязательные цифры и один дополнительный.

CHMOD= rwxs

, где

  • r — чтение;
  • w — запись;
  • x — выполнение;
  • s — выполнение от имени superuser.

Для каждой группы пользователей, перечисленных выше, указываются свои права CHMOD.

Например, но фото:

 

На фото вы видите итоговую цифру: 644 и 777. Это и есть итоговое значение CHMOD для разных групп пользователей.

Значения CHMOD могут быть от 444 (всё всем запрещено) до 777 (всё всем разрешено).

CHMOD права доступа для OpenCart

Для установки, работы и обновления OpenCart нужно, чтобы на все файлы OpenCart были установлены права CHMOD не ниже 644 (0644), а на каталоги OpenCart были установлены CHMOD не ниже 755 (0755).

Если не работают права 644 (0644) поставьте права 664 (0664). Права три шестёрки будут НЕ безопасны для взлома сайта.

Если при обновлении не работают эти права, пробуем права 777 (0777). После обновления меняем права на безопасные.

Важно! Устанавливая права 777, вы разрешаете всем делать с вашими каталогами и файлам, всё что угодно. Это не безопасно и оставлять такие CHMOD права нельзя.

Как менять атрибуты CHMOD файлов (каталогов)

Чтобы поменять атрибуты CHMOD файлов и каталогов рекомендую использовать программы FTP клиент «WinSCP» или «FileZilla». Для этого:

  • Войдите в каталог Opencart по FTP через любой FTP клиент;
  • Выберете файл (каталог) на котором нужно поменять права CHMOD;
  • Нажмите правую клавишу мыши и выберете команду «Свойства» на WinSCP или команду «Права» на FileZilla;
  • Выставите галочками нужные права;
  • Сохраните сделанные изменения.

winscp 664winscp 777

Вывод

В статье я показал, что такое CHMOD и какие права доступа нужны при работе с OpenCart. В завершении замечу, что корректные значения CHMOD зависят от настроек вашего сервера. И еще раз повторюсь, права 0666 и 0777 не безопасны и оставлять их для постоянной работы нельзя.

©shopiweb.ru

Еще статьи

Меткиopencart 3администратору OpenCartразработчику OpenCartустановить OpenCart

Права на файлы и папки | REG.RU

Что такое «права на файлы и папки»?

У каждого файла и папки есть 3 атрибута (права) доступа:

  1. Право на чтение (обозначается буквой r от английского read).
  2. Право на редактирование и запись в файл (обозначается буквой w от английского write).
  3. Право на исполнение (запуск) скрипта (обозначается буквой x от английского eXecute). На виртуальном хостинге право на исполнение применимо только к папкам и CGI-скриптам. Для обычных файлов (HTML-страницы, картинки, PHP скрипты и т. п.) право на исполнение не будет применяться.

Для папок эти атрибуты означают:

  • Право на чтение позволяет пользователю получить список содержимого папки.
  • Право на запись позволяет создавать и удалять файлы в этой папке.
  • Право на исполнение разрешает перейти в эту папку.

Существует несколько способов записи прав доступа: буквенная и цифровая записи. Ниже приведены соответствия двух типов записи:

Цифровая записьБуквенная записьПрава
«0»Ничего не разрешено
1—xИсполнение
2-w-Запись
3-wxЗапись и исполнение
4r—Чтение
5r-xЧтение и исполнение
6rw-Чтение и запись
7rwxЧтение, запись и исполнение

Категории пользователей

Для каждого файла (и папки) существует 3 категории пользователей:

  1. Владелец файла (папки).
  2. Группа пользователей, в которую входит владелец.
  3. Все остальные пользователи.

Права для различных категорий пользователей как в цифровом, так и в буквенном представлении записываются последовательно:

Если используется цифровая запись, первая цифра определяет права владельца, вторая — права группы, третья — права всех остальных пользователей.

При буквенной записи первые три символа определяют права владельца, вторые три определяют права группы, третьи три — права всех остальных пользователей.

Примеры прав доступа в цифровой и буквенной записях и пояснения к ним:

ЦифроваяБуквеннаяВладелецГруппаВсе остальные
755rwxr-xr-xполный доступчтение и исполнениечтение и исполнение
644rw-r—r—запись и чтениетолько чтениетолько чтение
555r-xr-xr-xчтение и исполнениечтение и исполнениечтение и исполнение

Какие права следует выставлять

Обычно корректными правами для папок являются 755, а для файлов — 644, но возможны исключения, о которых должен знать разработчик сайта. Также информацию по используемым атрибутам доступа можно найти в документации или на тематических форумах используемой вами CMS.

Как изменить права на файлы и папки

Изменить права доступа к файлу или папке можно двумя способами: в панели управления хостингом и по SSH.

Изменение прав в панели управления хостингом

Чтобы изменить права в панели управления хостингом:


  1. 1.

    Войдите в панель управления и следуйте дальнейшим инструкциям в зависимости от используемой панели:


ISPmanager

cPanel

Plesk


  1. 2.

    Перейдите в раздел «Менеджер файлов». Выберите необходимый файл/папку из списка.



  2. 3.

    Кликните по папке или файлу и нажмите Атрибуты:




  3. 4.

    В открывшемся окне установите необходимые права:

    В графе «Изменить дочерние элементы» вы можете изменить владельца и права доступа для файлов и(или) каталогов.

    Для сохранения изменений нажмите Ок.


Обратите внимание: если вид вашей панели управления отличается от представленного в статье, в разделе «Основная информация» переключите тему с paper_lantern на jupiter.


  1. 2.

    В разделе «Файлы» перейдите в Менеджер файлов. Далее перейдите к необходимой папке или файлу:




  2. 3.

    Чтобы изменить права отдельных папки или файла, кликните в столбце «Permissions» и задайте необходимые. Для сохранения нажмите Save:




  3. 4.

    Для массового изменения нажмите Выбрать все а затем Права:

    В появившемся окне установите необходимые права и нажмите Change Permissions:




  1. 2.

    Перейдите в корневой каталог вашего сайта:




  2. 3.

    Возле нужного файла нажмите на иконку меню и выберите пункт Изменить права:




  3. 4.

    В открывшемся окне установите необходимые права и нажмите Применить:



Готово, права на файлы/папки будут изменены.

Изменение прав по SSH

Чтобы настроить права доступа к отдельному файлу:


  1. 1.

    Подключитесь по SSH.



  2. 2.

    Выполните команду:

    chmod 755 /var/www/file_name

    Где /var/www/file_name — полный путь до вашего файла (/полный-путь-до-корневой-папки-сайта/сам-файл).


Готово, права на файлы/папки будут изменены.

Чтобы рекурсивно настроить доступ ко всем папкам и файлам на вашем сайте:


  1. 1.

    Подключитесь по SSH.



  2. 2.

    Выполните команды:

    find /dir_name -type d -exec chmod 755 {} \;
    find /dir_name -type f -exec chmod 644 {} \;

    Где dir_name — полный путь до корневой папки сайта (Как узнать корневую папку сайта).

    Первая команда изменит права для всех директорий внутри указанной на 755. Вторая — для файлов внутри указанной директории на 644.


Готово, права на файлы/папки будут изменены.

В качестве альтернативного способа вы можете использовать команду, чтобы сначала задать права всем файлам:

chmod -R 644 /dir_name

А затем назначить права 755 только на папки:

find /dir_name -type d -exec chmod 755 {} \;

Где dir_name — полный путь до корневой папки сайта (Как узнать корневую папку сайта).

Как изменить права на файлы и каталоги на хостинге для ASP.NET?

Чтобы изменить права доступа к файлам или каталогам на ASP.NET:


  1. 1.

    Откройте панель управления хостингом.



  2. 2.

    Перейдите в корневой каталог вашего сайта:



  3. org/HowToStep»>
    3.

    Возле нужного файла нажмите на иконку меню и выберите пункт Изменить права:




  4. 4.

    В открывшемся окне поставьте галочки напротив нужных групп и прав для этих групп. Кликните ОК:



Важно: нельзя изменить права на директорию сайта, права можно изменить только на подкаталоги.

Помогла ли вам статья?

Да

33
раза уже
помогла

php — Как решить проблему с разрешениями Linux для opencart

Я использовал subversion для отмены моего проекта PHP Opencart, но у меня возникла проблема с разрешениями (пример показан ниже:

Предупреждение: imagejpeg(): невозможно открыть ‘/var/www/html/opencart/image/cache/data/pavblog/img-blog-620x300w.jpg’ для записи: в /var/www/html/opencart отказано в доступе /system/library/image. php в строке 45

Предупреждение: imagejpeg(): невозможно открыть ‘/var/www/html/opencart/image/cache/data/pavblog/img-blog-250x250w.jpg’ для записи: в /var/www/html/opencart отказано в доступе /system/library/image.php в строке 45

Предупреждение: imagejpeg(): невозможно открыть…

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

 судо-chmod 777 /var/www/html/opencart
компакт-диск /var/www/html/opencart
sudo chmod 777 изображение/
sudo chmod 777 изображение/кэш/
sudo chmod 777 изображение/данные/
sudo chmod 777 система/кэш/
sudo chmod 777 система/журналы/
sudo chmod 777 скачать/
sudo chmod 777 config.php
sudo chmod 777 админ/config.php
 

Как это исправить?

  • PHP
  • OpenCart

4

Чтобы исправить свои разрешения, вам нужно выполнить два разных шага:

  1. Предоставить разрешение соответствующему объекту. Поскольку вы находитесь в /var/www/html, я предполагаю, что правильный пользователь — «apache».

     # Предоставляет разрешения для apache
    sudo chown apache:apache -R /var/www/html/opencart
    # Если это не сработает, попробуйте www-data
    sudo chown www-data:www-data -R /var/www/html/opencart
     
  2. Правильно установите разрешения для файлов и папок (для файлов может быть опасно иметь разрешение на выполнение)

     # Устанавливает права доступа к каталогу на 755 (rwxr-xr-x)
    sudo find /var/www/html/opencart -type d -exec chmod 755 {} \;
    # Устанавливает права доступа к файлу на 644 (rw-r--r--)
    sudo find /var/www/html/opencart -type f -exec chmod 644 {} \;
     

1

Вам необходимо применять разрешения рекурсивно. Попробуйте

sudo chmod -R 777 образ/кэш/

2

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя электронную почту и пароль

Опубликовать как гость

Электронная почта

Требуется, но никогда не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

linux — Как настроить права доступа к файлам OpenCart для группы www-data И 3 разных пользователей терминала, чтобы они могли совместно редактировать?

спросил

Изменено
3 года, 11 месяцев назад

Просмотрено
533 раза

У меня есть новый веб-сайт OpenCart. Мне и 2-м разным программистам с 3-мя разными логинами нужно редактировать одну и ту же файловую базу OpenCart в группе www-data. Я установил разрешения, используя приведенные ниже инструкции. Но эти инструкции не учитывают трех разных пользователей, имеющих разрешение на редактирование файлов. Нужно ли делать всех пользователей членами группы www-data?

Будем признательны за любую помощь.

 //сменить пользователя и группу
chown -R wyattjackson:www-данные
//складывается
найти /path/to/opencart/root -type d -exec chmod 755 {} +
//файлы
найти /path/to/opencart/root -type f -exec chmod 744 {} +
изображение chmod 775
chmod 775 система/хранилище
 
  • линукс
  • разрешения

1

Во-первых, чтобы убедиться, что пользователь apache создает файлы, доступные для групповой записи, вы можете изменить значение по умолчанию umask пользователя apache, добавив следующее в /etc/apache2/envvars (Debian/Ubuntu) или /etc/sysconfig/httpd (CentOS/Red Hat):

 umask 002
 

Теперь вы можете просто добавить всех в группу www-data или…

  1. Создать новую группу
  2. Добавить в него всех (включая www-data )
  3. Установите групповое владение docroot для вновь созданной группы
  4. Установите setgid бит в каталоге, чтобы все файлы наследовали его группу: chmod g+s /path/to/opencart/root

Преимущество второго, немного более сложного подхода заключается в том, что вы не открываете все файлов, созданных www-data, кому-либо в этой группе, что дает вам более детальный контроль над разрешениями вашего сервера.