Возможно, в это трудно поверить, но каждый из миллиардов файлов в Интернете имеет неповторимый адрес, который называется URL - Uniform Resource Locator - универсальный указатель ресурса.
URL может быть полным (абсолютным) или относительным. Подробнее об этом можно почитать здесь. Если кратко, то универсальный указатель ресурса - это путь к файлу в Интернете. Но, в отличие от пути к файлу на вашем компьютере, где в начале обычно указывается диск, в абсолютном URL вначале указывается протокол (например, http или ftp).
Протокол в данном случае - это правила (или способ) получения доступа к файлу.
В HTML есть несколько тегов, которые имеют атрибуты, принимающие URL в качестве значений. Например, гиперссылки, изображения, формы.
И да, гиперссылка - это не то же самое, что URL. Гиперссылка обычно содержит URL, но, как говорится, это другое…
Сложностей с URL обычно не возникает, но до тех пор, пока вы не включите в адрес недопустимый символ. А такие существуют. Например, в адресе не должно быть пробелов. Сейчас, когда везде используется Юникод, может это и допустимо - давно не проверял. Но в любом случае, не стоит с такими вещами экспериментировать. И если уж вам очень хочется, чтобы в URL был пробел или другой запрещённый символ, то надо использовать не символ, а его ASCII-код (или Юникод). Если используется ASCII-код, то это должна быть только английская часть таблицы ASCII.
http://mysite.ru/my page.htm
Это пример неправильного URL. Вообще не стоит использовать пробелы и другие запрещённые символы при именовании документов, хранящихся на вашем сайте. Вставляйте вместо них дефис или символ подчёркивания. Так будет надёжнее. Но если уж вам сильно приспичило, то можно сделать так:
http://mysite.ru/my%20page.htm
где %20 - это ASCII-код пробела. Подобным образом можно использовать в URL другие запрещённые символы. Можно, но не нужно…
А вообще существует довольно внушительный список символов, которые являются зарезервированными или небезопасными для использования в URL:
Поэтому надо стараться не использовать эти символы в именах файлов. Но что делать, если такой запрещенный символ всё-таки надо вставить в URL? Например, вам зачем-то надо вставить косую черту в то место, где её быть не должно:
http://mysite.ru/?1/2
Здесь ½ - это не имя файла, а часть запроса, на который должен ответить сервер. И если можно легко придумать имя файла, где не содержатся зарезервированные символы, то с запросами всё сложнее. Мало ли какой сценарий какие параметры должен получить. Всякое бывает. А косая черта, как вы знаете, является частью пути к файлу и не может использоваться в имени файла, а, следовательно, и в URL.
В таких случаях, как в уже рассмотренном примере с пробелом, надо вместо символа вставлять его код. То есть запрос желательно делать таким:
http://mysite.ru/?1%2f2
Хотя современные браузеры могут и проглотить запрос с косой чертой, лучше на это не надеяться.
На этом всё. Подписывайтесь на канал, чтобы ничего не пропустить.