Перейти на главную страничку сайта (список статей, файлы для скачивания)
URL - это Унифицированный Указатель Ресурса (Uniform Resource Locator). Также эту аббревиатуру иногда расшифровывают
как Универсальный Указатель Ресурса (Universal Resource Locator). URL, который можно набрать в адресной строке
браузера, имеет следующую форму:
протокол://доменное_имя_компьютера/директория/поддиректория/.../имя_файла
Доменное имя компьютера отражает иерархическую, или доменную, структуру службы DNS. Например, в имени fadr.msu.ru fadr - это имя компьютера в домене (второго уровня) msu.ru, который принадлежит домену (первого уровня) ru. Самая правая часть доменного имени определяет тип организации или страну, например:
com | коммерческие организации | edu | учебные заведения |
gov | правительственные учреждения | int | международные организации |
mil | военные организации | net | сетевые службы |
org | некоммерческие организации |
Двухбуквенные домены стран:
ac | Остров Вознесения | Ascension Island |
ad | Андорра | Andorra |
ae | Объединённые Арабские Эмираты | United Arab Emirates |
af | Афганистан | Afghanistan |
ag | Антигуа и Барбуда | Antigua and Barbuda |
ai | Остров Ангилья | Anguilla |
al | Албания | Albania |
am | Армения | Armenia |
an | Антильские острова | Netherlands Antilles |
ao | Ангола | Angola |
aq | Антарктика | Antarctica |
ar | Аргентина | Argentina |
as | Американское Самоа | American Samoa |
at | Австрия | Austria |
au | Австралия | Australia |
aw | Остров Аруба | Aruba |
az | Азербайждан | Azerbaijan |
ba | Босния и Герцеговина | Bosnia and Herzegovina |
bb | Барбадос | Barbados |
bd | Бангладеш | Bangladesh |
be | Бельгия | Belgium |
bf | Буркина-Фасо | Burkina Faso |
bg | Болгария | Bulgaria |
bh | Бахрейн | Bahrain |
bi | Бурунди | Burundi |
bj | Бенин | Benin |
bm | Бермудские острова | Bermuda |
bn | Бруней | Brunei Darussalam |
bo | Боливия | Bolivia |
br | Бразилия | Brazil |
bs | Багамские острова | Bahamas |
bt | Бутан | Bhutan |
bv | Остров Буве | Bouvet Island |
bw | Ботсвана | Botswana |
by | Белоруссия | Belarus |
bz | Белиз | Belize |
ca | Канада | Canada |
cc | Кокосовые (Килинг) острова | Cocos (Keeling) Islands |
cd | Конго (Киншаса) | Congo |
cf | Центральноафриканская Республика | Central African Republic |
cg | Конго (Браззавиль) | Congo |
ch | Швейцария | Switzerland |
ci | Кот-д'Ивуар (Берег Слоновой Кости) | Cote d'Ivoire |
ck | Острова Кука | Cook Islands |
cl | Чили | Chile |
cm | Камерун | Cameroon |
cn | Китай | China |
co | Колумбия | Colombia |
cr | Коста-Рика | Costa Rica |
cs | Чехословакия | Czechoslovakia |
cu | Куба | Cuba |
cv | Кабо-Верде | Cap Verde |
cx | Остров Рождества | Christmas Island |
cy | Кипр | Cyprus |
cz | Чешская республика | Czech Republic |
de | Германия | Germany |
dj | Джибути | Djibouti |
dk | Дания | Denmark |
dm | Доминика | Dominica |
do | Доминиканская республика | Dominican Republic |
dz | Алжир | Algeria |
ec | Эквадор | Ecuador |
ee | Эстония | Estonia |
eg | Египет | Egypt |
eh | Западная Сахара | Western Sahara |
er | Эритрея | Eritrea |
es | Испания | Spain |
et | Эфиопия | Ethiopia |
fi | Финляндия | Finland |
fj | Фиджи | Fiji |
fk | Фолклендские острова | Falkland Islands (Malvina) |
fm | Микронезия | Micronesia |
fo | Фарерские острова | Faroe Islands |
fr | Франция | France |
fx | Франция (метрополия) | France |
ga | Габон | Gabon |
gb | Великобритания | Great Britain |
gd | Гренада | Grenada |
ge | Грузия | Georgia |
gf | Французская Гвиана | French Guiana |
gg | Остров Гернси | Guernsey |
gh | Гана | Ghana |
gi | Гибралтар | Gibraltar |
gl | Гренландия | Greenland |
gm | Гамбия | Gambia |
gn | Гвинея | Guinea |
gp | Гваделупа | Guadeloupe |
gq | Экваториальная Гвинея | Equatorial Guinea |
gr | Греция | Greece |
gs | Острова Южная Джорджия и Южный Сэндвич | South Georgia and the South Sandwich Islands |
gt | Гватемала | Guatemala |
gu | Гуам | Guam |
gw | Гвинея-Бисау | Guinea-Bissau |
gy | Гайана | Guyana |
hk | Гонгконг | Hong Kong |
hm | Острова Херд и Макдональд | Heard and McDonald Islands |
hn | Гондурас | Honduras |
hr | Хорватия | Croatia/Hrvatska |
ht | Гаити | Haiti |
hu | Венгрия | Hungary |
id | Индонезия | Indonesia |
ie | Ирландия | Ireland |
il | Израиль | Israel |
im | Остров Мэн | Isle of Man |
in | Индия | India |
io | Британские территории в Индийском океане | British Indian Ocean Territory |
iq | Ирак | Iraq |
ir | Иран | Iran |
is | Исландия | Iceland |
it | Италия | Italy |
je | Остров Джерси | Jersey |
jm | Ямайка | Jamaica |
jo | Иордания | Jordan |
jp | Япония | Japan |
ke | Кения | Kenya |
kg | Киргизия | Kyrgyzstan |
kh | Камбоджа | Cambodia |
ki | Кирибати | Kiribati |
km | Коморские острова (Коморы) | Comoros |
kn | Сент-Китс и Невис | Saint Kitts and Nevis |
kp | КНДР | Nortn Korea |
kr | Республика Корея | South Korea |
kw | Кувейт | Kuwait |
ky | Острова Кайман | Cayman Islands |
kz | Казахстан | Kazakhstan |
la | Лаос | Lao |
lb | Ливан | Lebanon |
lc | Остров Сент-Люсия | Saint Lucia |
li | Лихтенштейн | Liechtenstein |
lk | Шри-Ланка | Sri Lanka |
lr | Либерия | Liberia |
ls | Лесото | Lesotho |
lt | Литва | Lithuania |
lu | Люксембург | Luxembourg |
lv | Латвия | Latvia |
ly | Ливия | Libyan Arab Jamahiriya |
ma | Марокко | Morocco |
mc | Монако | Monaco |
md | Молдова | Moldova |
mg | Мадагаскар | Madagascar |
mh | Маршалловы острова | Marshall Islands |
mk | Македония | Macedonia |
ml | Мали | Mali |
mm | Мьянма (Бирма) | Myanmar |
mn | Монголия | Mongolia |
mo | Макао (Аомынь) | Macau |
mp | Северные Марианские строва | Northern Mariana Islands |
mq | Мартиника | Martinique |
mr | Мавритания | Mauritania |
ms | Монтсеррат | Montserrat |
mt | Мальта | Malta |
mu | Маврикий | Mauritius |
mv | Мальдивы | Maldives |
mw | Малави | Malawi |
mx | Мексика | Mexico |
my | Малайзия | Malaysia |
mz | Мозамбик | Mozambique |
na | Намибия | Namibia |
nc | Новая Каледония | New Caledonia |
ne | Нигер | Niger |
nf | Остров Норфолк | Norfolk Island |
ng | Нигерия | Nigeria |
ni | Никарагуа | Nicaragua |
nl | Нидерланды | Netherlands |
no | Норвегия | Norway |
np | Непал | Nepal |
nr | Науру | Nauru |
nt | Нейтральная зона | Neutral Zone |
nu | Остров Ниуэ (Океания) | Niue |
nz | Новая Зеландия | New Zealand |
om | Оман | Oman |
pa | Панама | Panama |
pe | Перу | Peru |
pf | Французская Полинезия | French Polynesia |
pg | Папуа-Новая Гвинея | Papua New Guinea |
ph | Филиппины | Philippines |
pk | Пакистан | Pakistan |
pl | Польша | Poland |
pm | Сен-Пьер и Микелон | St. Pierre and Miquelon |
pn | Остров Питкэрн | Pitcairn Island |
pr | Пуэрто-Рико | Puerto Rico |
ps | Палестинские территории | Palestinian Territories |
pt | Португалия | Portugal |
pw | Палау | Palau |
py | Парагвай | Paraguay |
qa | Катар | Qatar |
re | Остров Реюньон | Reunion Island |
ro | Румыния | Romania |
ru | Россия | Russian Federation |
rw | Руанда | Rwanda |
sa | Саудовская Аравия | Saudi Arabia |
sb | Соломоновы Острова | Solomon Islands |
sc | Сейшельские Острова | Seychelles |
sd | Судан | Sudan |
se | Швеция | Sweden |
sg | Сингапур | Singapore |
sh | Остров Святой Елены | St. Helena |
si | Словения | Slovenia |
sj | Острова Шпицберген (Свальбард) и Ян-Майен | Svalbard and Jan Mayen Islands |
sk | Словацкая Республика | Slovak Republic |
sl | Сьерра-Леоне | Sierra Leone |
sm | Сан-Марино | San Marino |
sn | Сенегал | Senegal |
so | Сомали | Somalia |
sr | Суринам | Suriname |
st | Сан-Томе и Принсипи | Sao Tome and Principe |
su | СССР | USSR |
sv | Сальвадор | El Salvador |
sy | Сирия | Syrian Arab Republic |
sz | Свазиленд | Swaziland |
tc | Острова Теркс и Кайкос | Turks and Caicos Islands |
td | Чад | Chad |
tf | Французские южные территории | French Southern Territories |
tg | Того | Togo |
th | Таиланд | Thailand |
tj | Таджикистан | Tajikistan |
tk | Токелау | Tokelau |
tm | Туркмения | Turkmenistan |
tn | Тунис | Tunisia |
to | Тонга | Tonga |
tp | Восточный Тимор | East Timor |
tr | Турция | Turkey |
tt | Тринидад и Тобаго | Trinidad and Tobago |
tv | Тувалу | Tuvalu |
tw | Тайвань | Taiwan |
tz | Танзания | Tanzania |
ua | Украина | Ukraine |
ug | Уганда | Uganda |
uk | Великобритания и Сев. Ирландия | United Kingdom |
um | Малые Удалённые Острова США | US Minor Outlying Islands |
us | США | United States |
uy | Уругвай | Uruguay |
uz | Узбекистан | Uzbekistan |
va | Ватикан | Holy See (City Vatican State) |
vc | Сент-Винсент и Гренадины | Saint Vincent and the Grenadines |
ve | Венесуэла | Venezuela |
vg | Виргинские острова (Британия) | Virgin Islands (British) |
vi | Виргинские острова (США) | Virgin Islands (USA) |
vn | Вьетнам | Vietnam |
vu | Вануату | Vanuatu |
wf | Уоллис и Футуна | Wallis and Futuna Islands |
ws | Самоа | Western Samoa |
ye | Йемен | Yemen |
yt | Майотта | Mayotte |
yu | Югославия (Сербия и Черногория) | Yugoslavia |
za | Южная Африка | South Africa |
zm | Замбия | Zambia |
zr | Заир | Zaire |
zw | Зимбабве | Zimbabwe |
Обычно национальные доменные зоны позволяют регистрировать то или иное имя лишь резидентам конкретной страны. Однако такая регистрация часто рассматривается владельцами доменов как возможность извлечения дополнительных доходов. Иногда целые домены маленьких государств передаются полностью в управление различным организациям, которые далее регистрируют в этих доменах адреса по своему усмотрению.
Самая левая часть полного доменного имени компьютера часто бывает названа по имени типа серверной программы, которая на нём установлена, например www.microsoft.com или ftp.microsoft.com. Эти адреса могут принадлежать одному и тому же компьютеру с различными серверными программами, установленными на нём.
Примечание: вообще говоря, в конце полного доменного имени обязательно стоит точка (например, www.somehost.msu.su.). Именно такое представление является правильным, но браузеры и другие программы часто позволяют опускать завершающую точку. Завершающая точка называется корневым доменом, или доменом нулевого уровня. Это база данных, распределённая по заранее известным серверам по всему миру, в которой содержится список всех доменов первого уровня, таких, как com., net., ru. и т.д. Домен нулевого уровня один и не имеет наименования.
В доменных именах регистр букв не учитывается. Однако имена каталогов и файлов, следующие за доменным именем, могут быть чувствительны к регистру (это зависит от типа операционной системы, под управлением которой работает Web-сервер).
В редких случаях в URL может потребоваться указать номер коммуникационного порта (администратор сервера может настроить сервер так, что для обмена будут использоваться порты, отличные от принятых по умолчанию). Например: http://www.domainname.com:8080/products/products.htm. Для каждого протокола имеется свой номер порта по умолчанию. Прокси-сервер может блокировать передачу данных на нестандартные номера портов.
При использовании минимального варианта записи URL (без указания каталогов и файлов, только доменное имя) происходит обращение к корневому каталогу Web-сайта - если завершающая наклонная черта не указана, она подразумевается и добавляется либо браузером, либо Web-сервером. При этом сервер передаёт файл, который задан по умолчанию и называется индексным. Часто этот файл имеет имя "index.htm", "default.htm" и т.п.
Каждый компьютер в сети имеет уникальный IP-адрес, который представляет из себя 4-байтовое число, записываемое в десятичном виде и разделяемое точками на четыре части (например, 213.180.204.8). Числа в каждом сегменте находятся в промежутке от 0 до 255.
Когда браузер получает запрос от пользователя для обращения к удалённому компьютеру по доменному адресу, первое, что
происходит - это обращение к службе DNS (серверу DNS, специальной машине в cети) для преобразования доменного имени
в IP-адрес. Существует множество утилит, с помощью которых можно сделать такой запрос и получить результат, не
прибегая к услугам браузера. Например, программа nslookup позволяет узнать IP-адрес по URL такой командной строкой:
nslookup URL
Таким образом, что бы вы не набрали в адресной строке браузера - http://www.ya.ru или http://213.180.204.8 - результат будет один и тот же.
Одному и тому же IP-адресу вполне может соответствовать сразу несколько доменных имен. Также возможен случай, когда одному и тому же DNS-имени сопоставлены несколько разных IP-адресов. В этом случае служба DNS автоматически выбирает тот из адресов, который, по её мнению, ближе всего расположен к клиенту, или который давно не использовался, или же наименее загружен. Эта возможность часто задействуется, когда Web-сервер становится очень большим (точнее, когда число его клиентов начинает превышать некоторый предел), и его приходится обслуживать сразу нескольким компьютерам.
При вводе IP-адреса в адресную строку браузера (или как аргумента команды "ping") с ним иногда можно производить некоторые манипуляции (преобразования). Данные преобразования могут работать или не работать в зависимости от версии браузера, настроек прокси-сервера, установленной на компьютере операционной системы (т.е. конкретно у Вас может не работать ничего из сказанного несколько ниже). При этом то, что не работает в браузере, может работать в ping (возможно, есть и ещё какие-то нюансы). Перечень возможных преобразований IP-адреса, например, http://213.180.204.8:
http://213.180.204.264 | К каждой части IP-адреса можно прибавлять число 256 произвольное количество раз, но так, чтобы результат оставался трёхзначным. |
http://0xD5.0xB4.0xCC.0x8 http://0xD5B4CC08 |
IP-адрес может быть записан в шестнадцатеричной форме. |
http://0325.0264.0314.010 http://000325.000264.000314.00010 |
IP-адрес может быть записан в восьмеричной форме. При этом количество лидирующих нулей может быть сколь угодно большим. |
http://3585395720 http://7880363016 |
Шестнадцатеричное представление адреса, состоящее из восьми цифр, можно перевести в десятичное число. Если прибавить к полученному числу число 4294967296 (т.е. 2564) любое количество раз, полученный результат будет идентифицировать тот же IP-адрес. |
http://0x2D5B4CC08 | Прибавлять число 4294967296 (т.е. 2564) можно и в шестнадцатеричной форме (где оно выглядит как 100000000). |
http://00325.0xB4.204.010 | Можно использовать смешанный тип записи. |
Символ "@", поставленный внутри URL, означает, что все знаки между "http://" и "@" к выбору адреса никакого отношения не имеют. Например, http://111@www.ya.ru приведёт на http://www.ya.ru. Знаки, введенные между "http://" и "@" используются для аутентификации пользователя. Например, если вход на определенный ресурс интернета требует ввода логина и пароля. В этом случае, имя пользователя и пароль разделяются двоеточием, например: ftp://username:password@www.whatever.com/members/memberfile.zip. В том случае, если вход не требует авторизации пользователя, лишние знаки просто игнорируются сервером. Примечание: включать пароль в URL не рекомендуется из соображений безопасности.
Каждый символ в URL может быть представлен соответствующим ему номером в шестнадцатеричной форме. Перед каждым таким символом нужно ставить знак "%" для идентификации последующих за ним двух цифр/букв в качестве шестнадцатеричного представления (такой способ может применяться для отображения пробелов и других неиспользуемых символов в URL). Например, http://www.%79%61.ru будет интерпретирован как http://www.ya.ru. Вот некоторые символы из таблицы ASCII, которые можно использовать, и их коды:
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | NUL | SOH | STX | ETX | EOT | ENQ | ACK | BEL | BS | HT | LF | VT | FF | CR | SO | SI |
1 | DLE | DC1 | DC2 | DC3 | DC4 | NAK | SYN | ETB | CAN | EM | SUB | ESC | FS | GS | RS | US |
2 | SP | ! | " | # | $ | % | & | ' | ( | ) | * | + | , | - | . | / |
3 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
4 | @ | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O |
5 | P | Q | R | S | T | U | V | W | X | Y | Z | [ | \ | ] | ^ | _ |
6 | ` | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o |
7 | p | q | r | s | t | u | v | w | x | y | z | { | | | } | ~ | DEL |
Объектом URL может служить не только сама интернет-страница, но и позиция на этой странице. В этом случае после открытия страницы браузер прокрутит страницу до нужной позиции так, чтобы эта позиция оказалась видимой (если страница не помещается целиком на экране). Если HTML-код страницы содержит тэги <a>, у которых задан атрибут "name", вы можете сослаться на это конкретное место (тэг) на странице с помощью символа "#" в конце URL. После символа "#" должно быть указано значение атрибута "name". Например, ссылка http://www.mydomainname.ru/about.html#contens приведёт на тэг с именем "contens" в документе "about.html" на сервере "www.mydomainname.ru", если в коде этого документа есть конструкция типа <a name="contens">...какой-то текст...</a>.
C помощью URL можно передать некоторые данные скрипту, который работает на заданной интернет странице, и запустить этот скрипт. В этом случае не придётся открывать предварительно страницу, заполнять поля ввода и "вручную" нажимать на кнопку или ссылку, запускающую скрипт. Например, набрав в адресной строке браузера строку http://www.yandex.ru/yandsearch?&text=текст%20поиска, вы сымитируете следующие действия: открытие страницы www.yandex.ru, набор в поле ввода текста "текст поиска" и нажатие кнопки "Найти". В результате запустится скрипт "yandsearch" с параметром "text", равным "текст%20поиска". Конечно, при этом неплохо бы точно знать, какие параметры вообще можно передавать скрипту (таких параметров может быть несколько, в этом случае они разделяются знаком &, например: http://www.yandex.ru/yandsearch?&text=текст%20поиска&zone=all). Однако эти параметры в некоторых случаях можно достаточно легко определить экспериментальным путём.
Людоговский Александр
Перейти на главную страничку сайта (список статей, файлы для скачивания)
© 2007 http://www.script-coding.com При любом использовании материалов сайта обязательна ссылка на него как на источник информации, а также сохранение целостности и авторства материалов.