Если вы загружаете на сайт файлы (документы, изображения, архивы и пр.), и подразумевается, что доступ к этим файлам будет публичный, а не ограниченный списком избранных товарищей, нужно иметь в виду, что различные многочисленные пользователи сети интернет используют разные устройства ( настольные компьютеры, ноутбуки, планшеты, смартфоны, ...) и разные операционные системы (Mac, PC, Linux, ...).

Символы, запрещенные в имени файла

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




Использование правильных названий для папок и файлов очень важно для web, особенно - для загружаемых файлов, таких как PDF-файлы, документы MS Word, электронные таблицы MS Excel и др.

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

 

Не используйте следующие запрещенные символы в названиях директорий и файлов:

# - pound (решетка) < - left angle bracket (знак "меньше") $ - dollar sign (доллар) + - plus sign (плюс)
% - percent (процент) > - right angle bracket (знак "больше") ! - exclamation point (восклицательный знак) ` - backtick (обратная кавычка)
& - ampersand (амперсенд) * - asterisk (звездочка) - single quotes (одинарные кавычки) | - pipe (вертикальная черта)
{ - left bracket (левая фигурная скобка) ? - question mark (вопросительный знак) - double quotes (двойные кавычки) = - equal sign (равно)
} - right bracket (правая фигурная скобка) / - forward slash (прямой слеш) : - colon (двоеточие)  
\ - back slash (обратный слеш) - blank spaces (пробел) @ - at sign (собачка)  

 




 

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

Рассмотрим ситуацию, в которой пользователь загрузил на сайт PDF-файл, содержащий в названии символ "Решетка" (pound) - #. Сервер имеет операционную систему Linux. Поведение сервера при наличии таких символов в именах файлов будет неадекватным.

В этом случае апач считает что URL - это все, что находится перед знаком "Решетка", а все что после него - это якорь на HTML-странице, т.е. ссылка на конкретное место в HTML-документе. Соответственно, он не распознает его, как файл и не отдает пользователю.

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

Таким образом, нужно всего лишь не использовать символы запрещенные для имен и папок на сайте. Это самое простое в реализации.

 

Дополнительно, запомните следующие правила и постарайтесь им следовать:

  • Название файлов не должно начинаться и заканчиваться знаком "Пробел" (space), "Точка" (period), "Дефис" (hyphen) или "Подчеркивание" (underline);
  • Не присваивать файлам слишком длинные названия, постараться не превышать 31 символ;
  • По возможности всегда использовать только маленькие буквы, некоторые операционные системы чувствительны к регистру;
  • Избегайте использование знакаробел" и "Подчеркивание", если название файла состоит из нескольких слов. В этом случае лучше используйте знакефис".
  • Не используйте отличные от латиницы буквы для названий файлов и папок (русские, китайские, немецкие с умляут и др.). Не смотря на широкие возможности современных кодировок типа UTF-8, у некоторых пользователей могут возникнуть трудности с файлами, имеющими такие экзотические символы в названии.

Комментарии   

#1 caoufa12 10.04.2018 23:44
Запрещенные символы, это:
- Х,
- Y
- Й
(когда они стоят подряд в одной строке)

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

Вы можете авторизоваться с помощью социальных сетей:
     

Или заполнить форму:

Защитный код
Обновить


      Маразмы-Афоризмы УВАУ ГА
      Маразмы-Афоризмы УВАУ ГА

      Данное эксклюзивное "литературное" произведение было собрано, сверстано, напечатано в нескольких экземплярах в виде брошюры размером А5 и, конечно же, размещено на просторах Интернета выпускниками факультета УВД (Управление Воздушным Движением) 2003 года Ульяновского высшего авиационного училища гражданской авиации (УВАУ ГА). Курсанты группы Д11/51-98 в течение 5 лет не только смеялись над друг...




      Wi-Fi роутер и локальная сеть Novell
      Wi-Fi роутер и локальная сеть Novell

      Вариантов организации локальной сети может быть очень много. У каждого из них - свои особенности и настройки. В этой статье рассматривается только вариант настройки Wi-Fi роутера на примере Apple Airport Extreme для локальной сети, организованной с помощью Novell. В принципе, в данном примере вместо роутера Apple Airport Extreme может фигурировать любой другой роутер, и не обязательно яблочный, принцип...




      Как закачать видео на ipad
      Как закачать видео на ipad

      Какой формат видео поддерживает iPad? На данный момент (лето 2013 года) планшеты iPad поддерживают только 2 формата видеофайлов: 1. MPEG (файлы с расширением *.mp4 и *.m4v) 2. Qick Time (файлы с расширением *.mov) Все другие форматы iPad не поддерживает, и для их просмотра на яблочном планшете необходима конвертация с помощью специальной программы или установка на iPad отдельного приложения для просмотра...




      Подборка полезных команд bash-Mac (башмак :)
      Подборка полезных команд bash-Mac (башмак :)

      Для полноценной работы с Mac рано или поздно придется использовать консоль. В маке она называется Терминалом. Кроме заурядных известных команд, некоторые действия приходится выполнять не часто, запоминать их особого смысла нет, лучше сохранить в шпаргалку. Консоль/терминал также называют - BASH (Bourne-Again SHell). Все это рассматриваем в рамках использования на компьютерах Mac, в итоге -...




      ADS-B с помощью спутников
      ADS-B с помощью спутников

      В 2018 году американская компания Aireon планирует ввести в действие первую в мире глобальную систему наблюдения за воздушным движением, расширив тем самым систему автоматически-зависимого наблюдения в режиме вещания - ADS-B (русский термин - АЗН-В) на всю планету. С помощью системы ADS-B космического базирования компания Aireon (система Aireon) будет предоставлять в режиме реального времени 100% зону...




      Контакты в iPhone - управление, копирование, восстановление
      Контакты в iPhone - управление, копирование, восстановление

      Многие пользователи яблочных девайсов радостно эксплуатируют их и не задумываются о том, что очень желательно на всякий случай периодически делать резевную копию всех контактов. Лично я несколько лет назад был свидетелем ситуации, когда одна девушка-красавица во время проведения международного автмобильного ралли легкомысленно обновила операционную систему своего iPhone до какой-то очередной iOS XXX, но что-то...




      Использование системы координат WGS-84 в мире
      Использование системы координат WGS-84 в мире

      Международная организация гражданской авиации (ИКАО) предписывает использовать Всемирную геодезическую систему 1984 (WGS-84) или эквивалентную ей в качестве стандарта для указания координат широты и долготы аэронавигациионных данных. В настоящее время далеко не все страны используют геодезическую систему WGS-84 для определения, хранения и публикации аэронавигациионных данных. Не смотря на...



Яндекс.Метрика