Что делает знак доллара $в URL?

Я читал, что $ ! ; . , являются "зарезервированными" символами в URL-адресе. Но я не могу найти, для чего они предназначены.

/ path delimiter  
: port
? query  
& glue get params  
= param=val  
\# link anchor  
+ space

.

Мои вопросы specific:
Кто-нибудь знает, для чего используются $ ! ; . ,?
Имеет ли : какое-либо особое значение в запросе uri?

Ответы

Ответ 1

RFC 2396 является исчерпывающим.

Для современных версий спецификации см.

  • RFC3987 (в отношении IRI); и
  • RFC3986 (в отношении URI).

О программе /

Да, это используется как разделитель в части пути.

О программе:

Ye, он используется как префикс для порта, но имеет другие роли, такие как секвенсор информации о пользователях, и разделитель для стилей IP спецификаторов хоста.

About =

Удивительно, что символ = не является частью общего URL, URI и синтаксиса IRI. Он имеет особое значение только для протоколов http (s). Это не является неотъемлемой частью URL/IRI/URI

О +

Роль + в качестве замены пространства НЕ является частью синтаксиса URL/URI/IRI. Это просто удобное изобретение некоторых программ PHP для целых URL-адресов.

О $и;

Они не имеют особого значения в синтаксисе URL/URI/IRI. Они могут быть частью производства субдистрибьюторов, которые могут использоваться в пользовательской информационной части, будущей IP-части, сегменте пути или главной части.

Ответ 2

Ваш вопрос немного широк, но RFC 2396 должен содержать все ваши ответы.

Многие URI включают в себя компоненты, состоящие из определенных символов или ограниченные ими. Эти символы называются "зарезервированными", поскольку их использование в компоненте URI ограничено их зарезервированной целью. Если данные для компонента URI будут конфликтовать с зарезервированной целью, тогда конфликтующие данные должны быть экранированы перед формированием URI.

 reserved    = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" |
                "$" | ","

"зарезервированный" класс синтаксиса выше относится к тем символам, которые разрешены в пределах URI, но которые могут не разрешаться в определенном компоненте синтаксиса общего URI; они используются как разделители компонентов, описанных в разделе 3.

Символы в "зарезервированном" наборе не зарезервированы во всех контекстах. Набор символов, фактически зарезервированных в пределах любого данного компонента URI, определяется этим компонентом. В общем случае символ зарезервирован, если семантика URI изменяется, если символ заменен на его экранированную кодировку US-ASCII.