ProfiPHPProfiPHP
Категория: Полезное в PHP

Права доступа к файлам и папкам

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

Сайтом на хостинге управляет определенная операционная система. Скорее всего Unix системы, в связи с определенными преимуществами. Сейчас мы не будем их перечислять, но операционная система Windows в качестве операционной системы сервера это скорее экзотика, чем правило. Просто отметим для себя, что в операционной системе Windows права доступа к папкам и файлам установлены с максимальным доступом. То есть все могут сделать практически любые действия с данным файлом или папкой.

В Unix-подобных операционных системах такого точно не увидите. Здесь все существенно сложнее. Именно эта сложность и обеспечивает безопасность файлов и папок сайта. Сейчас рассмотрим, что представляет собой эта система и как проходит настройка прав доступа к папкам и файлам сайта.

Если заглянуть в свойства папок или файлов сервера, то увидете, что права доступа к папкам и файлам задаются цифрами. Например, всем знакомая комбинация права доступа 777, которая позволяет все и всем. Сами права доступа делятся на три категории: права доступа к файлу, права доступа к папке или директории и права доступа для групп пользователей, что собственно и определяет цифровую комбинацию доступа.

Права доступа к файлам:

4 - право на чтение данных из файла (read);

2 - право на изменение содержимого файла (write);

1 - право на выполнение файла (execute);

0 - ничего не делать.

Немного о праве на выполнение файла. В отличие от операционной системы Windows, в Unix может быть выполнен любой файл. Будет ли он исполнительным, определяется правом доступа. Если у файла право доступа единица, то он может быть запущен на выполнение.

Права доступа к папкам (директорий):

4 - право на чтение директории (read);

2 - право на изменение содержимого директории (write);

1 - право на вход в директорию (execute).

Права доступа для групп пользователей

Права доступа для групп пользователей делятся на три категории. К какой категории будет отнесен пользователь, зависит от того, кто обратился к файлу или директории.

категория User - это непосредственно владелец файла;

категория Group - это члены группы, к которой принадлежит владелец файла;

категория World - все остальные.

Как определить, к какой группе относится тот или иной пользователь? Например, если пользователь подключается к серверу через FTP менеджер или через панель управления сайтом и входит под своим логином и паролем, то сервер присвоит ему категорию User, а пользователю, который заходит на сайт с помощью браузера - категорию World.

Следовательно, права доступа к папкам и файлам описываются с помощью трех цифр, перед которой обязательно должна быть цифра "0", но пока это опустим.

Чтобы стало еще понятнее, возьмем например, права 754, и подробно разберем их:

7 - владелец файла может читать (4), записывать (2) и выполнять (1) файл.

5 - группа владельца может читать (4) и выполнять (1) файл.

4 - все остальные пользователи могут только читать (4) файл.

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

Для установления прав доступа используется функция Chmod. Во всех современных FTP клиентах присутствует возможность назначения прав доступа путем проставления "галочки" в чекбоксах, или просто введением цифрового кода в соответствующее поле.

Добавить комментарий

Имя:
Текст комментария: