Бесплатный FTP-клиент FileZilla Client. Часть 2.


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

Режим передачи

Есть два вида файлов. Первый тип это текстовые файлы, которые просматриваются блокнотом Windows и редактируются им. Понятно, что файлы, которые описывают страницы сайта это текстовые файлы. Их расширения обычно бывают htm, html, shtml, php, css и другие.

Второй тип файлов называется бинарным типом. Это все остальные файлы, например, рисунки, фотографии, видеоролики, исполняемые программы, файлы, созданные программами Excel и Word, и прочие. При просмотре файлов второго типа блокнотом Windows мы видим абракадабру, которую невозможно превратить в осмысленный текст никакой сменой кодировки. Бинарные файлы невозможно редактировать блокнотом Windows потому что блокнот никогда не показывает два символа. Это символы, которые блокнот Windows интерпретирует как символ конца строки и символ перехода на новую строку. Поэтому если посмотреть блокнотом, например, файл фотографии с расширением jpg, то Вы не увидите этих символов, а вместо них увидите, например, что началась новая строка. Хотя Вы же понимаете, что никаких строк в фотографиях или видеороликах не бывает.

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

Режим передачи задается или через меню "Передача" и подпункта "Режим передачи". Режим "ASCII" это текстовый режим. Режим "двоичный" это бинарный режим. Если Вы в данный момент подключены к сайту, то в нижней строке справа всегда отображается значек установленной в данной момент передачи. Там же можно и быстро сменить режим передачи, чтобы не лазить по верхнему меню.

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

Права доступа

Когда Вы закинули какой-нибудь файл себе на хостинг или создали папку, то файлу или папке надо присвоить права доступа. Обычно по умолчанию всем файлам на хостинге присваиваются права доступа 644, а всем созданным папкам права доступа 750. (Не всегда. Проверяйте сами.) Но часто бывает такая ситуация, когда файлам и папкам надо присвоить какие-то другие права доступа. Обычно такая потребность возникает, когда Вы устанавливаете себе на сайт какой-нибудь скрипт.

Чтобы установить права доступа какому-нибудь файлу или папке на сайте надо в FileZilla Client кликнуть по папке или по файлу правой кнопкой мышки и выбрать в контекстном меню пункт "Права доступа к файлу...". Разумеется, что одинаковые права доступа можно присваивать сразу целой группе файлов или папок. Для этого выделяем эти файлы или папки клавишами стрелок, удерживая нажатой клавишу Shift.

Всего существует 9 видов прав доступа. Это сочетание трех видов того, что можно делать с файлом, и трех видов того, кому дается разрешение это что-то делать с файлом.

Итак, что можно делать с файлом на сайте. С файлом на сайте можно делать три вещи. Файл можно читать, то есть просматривать его. Затем, файл можно исполнять, если это программа или скрипт. И, наконец, файл можно исправлять, редактировать.

Теперь, кому это все разрешено делать. Тут тоже три варианта. Во первых, это может быть разрешено всем, во вторых, это может быть разрешено только группе лиц, и, наконец, это может быть разрешено только хозяину файла. Обратите внимание, что я тут сказал "хозяин файла", а не "хозяин сайта". В чем разница, расскажу чуть позже.

Так вот, Вы сможете сделать на каком-нибудь сайте что-то с каким-нибудь файлом, в зависимости от того, какие права доступа стоят у этого файла и к какой группе лиц Вы будете отнесены. Обычно, если человек попадает на сайт через FTP-клиент под именем владельца сайта, то он считается владельцем файла. (Об исключениях чуть позже.) Если на сайт разрешен доступ по FTP под другими именами, то попавшие на сайт таким способом образуют какую-нибудь группу. Все, кто попадает на сайт через браузер, обычно относятся ко всем остальным.

Права доступа на папку или файл обычно представляют в виде трех цифр (например, 666), где каждая цифра обозначает права доступа для своей группы пользователей. Первая цифра устанавливает суммарные права для владельца, вторая - суммарные права для группы и третья - суммарные права для всех остальных. Суммарная цифра представляет собой арифметическую сумму трех цифр, обозначающих следующие права:

  • 4 = Read (право на чтение)
  • 2 = Write (право на запись)
  • 1 = Execute (право на выполнение)

Нетрудно заметить, что эти числа подобраны таким образом, чтобы сумма разных их комбинаций не была одной и той же. (Кто знает, что такое двоичная система, тот догадывается об этом сразу.) Поэтому по суммарной цифре всегда можно однозначно определить сочетание прав доступа. Например, число 6 можно получить только как сумму 4+2 и никак иначе. Значит 6 означает, что разрешено файл читать (4) и редактировать (2) одновременно.

Всего могут быть следующие семь комбинаций:

  • 7 = 1+2+4 - Read, Write, Execute
  • 6 = 4+2 - Read, Write
  • 5 = 4+1 - Read, Execute
  • 4 = 4 - Read
  • 3 = 1+2 - Write, Execute
  • 2 =2 - Write
  • 1 =1 - Execute

Например, права доступа 754 означают, что владельцу файла можно с этим файлом делать все что угодно (7), группе можно этот файл только читать и исполнять (5), а всем остальным только просматривать его (4).

В некоторых программах управления хостингом, а также в некоторых FTP-клиентах используется более простая система обозначений. Вместо цифр используются первые буквы английских слов, которые означают, что с этим файлом разрешено делать. Так вместо 754 там будет написано "- rwe r-e r--". Первый знак "-" означает, что речь идет об обычном файле, а не о директории, символьном или блочном устройстве, ссылке или другом объекте. (А у этих объектах тоже могут быть свои права доступа.) Затем первая тройка символов "rwe" означает, что владельцу файла даны все права (чтение, запись и исполнение). Следующая тройка символов "r-e" указывает, что группе дано право читать этот файл и исполнять его, а вот вместо символа "w" стоит символ "-", что указывает на то, что группа не имеет право изменять этот файл. Наконец, последняя тройка символов "r--" относится ко всем остальным и указывает на то, что они могут только читать этот файл.

Вот такие буквенные обозначения более понятны. А к цифровым обозначениям нужно еще привыкнуть.

Чтобы было еще более понятнее, что такое права доступа, приведу аналогию с автомобилем. У любого автомобиля три возможности доступа к нему. На автомобиль можно смотреть, можно внутрь него сесть как пассажир и можно сесть за руль на водительское место, то есть автомобиль можно водить. Эти права могут распространяться на всех людей или только на группу лиц, например, на некоторых членов Вашей семьи или на некоторых Ваших знакомых, и, наконец, они могут иметь отношение только к Вам.

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

Можете потренироваться и расписать таблицу размером три на три, написав в каждой ячейке, что это за автомобиль.

Если Вы равнодушны к автомобилям, но неравнодушны к женщинам, то можете такую же таблицу с правами доступа нарисовать для женщин. На женщину можно смотреть, с женщиной можно говорить (проводить время в ее обществе) и женщину можно... танцевать. (У меня тут приличный сайт!) Эти права могут иметь отношение лично к Вам, к Вашим знакомым и родственникам и ко всем остальным. Попробуйте сообразить, как называется женщина у которой права доступа 777, а также, какие права доступа имеет верная жена и какие права доступа имеет неверная жена.

Владелец файлов и папок

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

Начинающим сайтостроителям порой кажется это невероятным, чтобы у них на сайте были какие-то файлы, которыми владеет кто-то другой. Когда мои сайты были на бесплатных хостингах типа narod.ru, я был полноправным владельцем всех файлов на своих сайтах и у меня были права доступа 7 (rwe). Но каково же было мое удивление, когда на платном хостинге я однажды не смог посмотреть содержимое одного файла и мне выдали сообщение, что у меня нет таких прав доступа к этому файлу и что владельцем этого файла является какой-то апачи. Я конечно сразу же сообразил, что индейцы племени апачи не завладели этим файлом на моем сайте, а что этот файл был создан не мной, а скриптом, который исполнялся у меня на сайте. Этот скрипт был написан на языке PHP. Чтобы на сервере работали скрипты написанные на PHP, надо чтобы на хостинге работала надстройка операционной системы, которая называется Apach.

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

В FTP-клиенте FileZilla Вы можете посмотреть владельцев у всех своих файлов на сайте. Там есть специальная колонка в списке файлов. Владельцам обычно присваивают какие-нибудь номера. Посмотрите на номера тех файлов, которые создали Вы сами под своими учетными записями. Это все Ваши файлы и у них Вы можете менять права доступа. Если, например, Вы не можете редактировать какой-то из Ваших файлов, но Вы видите, что файл точно Ваш, то сначала по номеру разберитесь, кто из Вас владелец этого файла и зайдите на сайт через FileZilla Client под именем и паролем владельца. Теперь можно изменить права доступа файла, чтобы постоянный доступ к редактированию получил другой Ваш аккаунт или отредактировать этот файл прямо сейчас, если это одноразовая потребность.

Если Ваш сайт находится на каком-то бесплатном хостинге, типа narod.ru, то, скорее всего, владелец файлов сайта narod.ru имеет доступ и ко всем Вашим файлам на Вашем сайте. Это видно хотя бы по тому, что в код Вашего сайта автоматически дописывается код рекламного баннера. А это значит, что на бесплатном хостинге Ваши файлы могут редактировать как захотят и Вы даже не будете знать об этом. Это еще один аргумент к тем, что приведены здесь, чтобы перенести свой сайт на платный хостинг.

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

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

Моя попытка почистить тот файл от старых записей вручную не прошла, так как я не имел таких прав доступа и не был владельцем того файла. На том хостинге была возможность глобально поменять владельца сразу у всех файлов на себя. Тогда этот файл можно было редактировать. Но при этом скрипт впадал в полный ступор, так как он лишался прав доступа к тем файлам, к которым ему нужны были такие права. Эти права переходили ко мне, как к новому владельцу, а скрипту доставались те права, которые были раньше у меня, потому что менялся только владелец файлов, а цифры прав доступа оставались прежними. А возможности поменять владельца только у одного файла, а потом, после правки, вернуть файл обратно предыдущему владельцу, на хостинге не было. Поэтому надо было разбираться с каждым файлом отдельно и ставить им дополнительные права доступа. А поскольку таких файлов, на которых начинал спотыкаться скрипт было дофига и спотыкался он на них не на всех сразу, а только по несколько десятков файлов в день, то срочно приходилось тупо ставить права доступа 777 на все файлы, которые могут потребоваться этому скрипту в дальнейшем. А это не есть хорошо в плане безопасности.

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

Проблема была решена только сменой хостинга, на котором скрипт работал корректно. Кстати, это хостинг с полным набором всех стандартных опций.

Вот такие могут быть проблемы с файлами, владельцами которых Вы не являетесь, если скрипт работает некорректно (неважно, программист плохой или плохой хостинг).

-------------------

[0] Начало работы с FTP-клиентом FileZilla Client
[1] Настройка режима передачи и прав доступа, смена владельцев файла


Наши Сервисы:
Генератор сайтов
Скачать халяву
Скидочные купоны
Визуальный онлайновый конвертор
Мастер Рефералов
Генератор паролей
Генератор цветовых схем
Проверка качества сайта
Чистильщик HTML кода
Microsoft Word вер.10
Бесплатные скрипты