Как прописать статический маршрут? И зачем он нужен? Как прописать статические маршруты (routes).

Всем привет сегодня расскажу как прописать статический маршрут в windows с помощью утилиты командной строки route и как посмотреть таблицу маршрутизации Windows. Утилита route выводит на экран и изменяет записи в локальной таблице IP-маршрутизации. Когда вам может потребоваться добавление маршрута windows, тут за примером далеко ходить не нужно, самое простое, что вам нужно направить трафик до определенной локальной сети, понятно что все маршруты должен знать шлюз по умолчанию, но не всегда это возможно выполнить по ряду причин и не правильном построении сети. Кстати если кому интересно, то я рассказывал, как делается настройка маршрутов в centos , советую посмотреть для расширения кругозора.

Добавление маршрута windows

Добавление маршрута Windows начинается с изучения синтаксиса команды отвечабщего за это, открываем командную строку от имени администратора и вводим вот такую команду:

Запущенная без параметров, команда route выводит справку.

route [-f] [-p] [команда [конечная_точка] [шлюз] ] ]

  • -f Очищает таблицу маршрутизации от всех записей, которые не являются узловыми маршрутами (маршруты с маской подсети 255.255.255.255), сетевым маршрутом замыкания на себя (маршруты с конечной точкой 127.0.0.0 и маской подсети 255.0.0.0) или маршрутом многоадресной рассылки (маршруты с конечной точкой 224.0.0.0 и маской подсети 240.0.0.0). При использовании данного параметра совместно с одной из команд (таких, как add, change или delete) таблица очищается перед выполнением команды.
  • -p При использовании данного параметра с командой add указанный маршрут добавляется в реестр и используется для инициализации таблицы IP-маршрутизации каждый раз при запуске протокола TCP/IP. По умолчанию добавленные маршруты не сохраняются при запуске протокола TCP/IP. При использовании параметра с командой print выводит на экран список постоянных маршрутов. Все другие команды игнорируют этот параметр. Постоянные маршруты хранятся в реестре по адресу HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes команда Указывает команду, которая будет запущена на удаленной системе. В следующей таблице представлен список допустимых параметров.
  • add > Добавление маршрута
  • change > Изменение существующего маршрута
  • delete > Удаление маршрута или маршрутов
  • print > Печать маршрута или маршрутов

Конечная точка определяет конечную точку маршрута. Конечной точкой может быть сетевой IP-адрес (где разряды узла в сетевом адресе имеют значение 0), IP-адрес маршрута к узлу, или значение 0.0.0.0 для маршрута по умолчанию. mask маска_сети Указывает маску сети (также известной как маска подсети) в соответствии с точкой назначения. Маска сети может быть маской подсети соответствующей сетевому IP-адресу, например 255.255.255.255 для маршрута к узлу или 0.0.0.0. для маршрута по умолчанию. Если данный параметр пропущен, используется маска подсети 255.255.255.255. Конечная точка не может быть более точной, чем соответствующая маска подсети. Другими словами, значение разряда 1 в адресе конечной точки невозможно, если значение соответствующего разряда в маске подсети равно 0. шлюз Указывает IP-адрес пересылки или следующего перехода, по которому доступен набор адресов, определенный конечной точкой и маской подсети. Для локально подключенных маршрутов подсети, адрес шлюза - это IP-адрес, назначенный интерфейсу, который подключен к подсети. Для удаленных маршрутов, которые доступны через один или несколько маршрутизаторов, адрес шлюза - непосредственно доступный IP-адрес ближайшего маршрутизатора. metric метрика Задает целочисленную метрику стоимости маршрута (в пределах от 1 до 9999) для маршрута, которая используется при выборе в таблице маршрутизации одного из нескольких маршрутов, наиболее близко соответствующего адресу назначения пересылаемого пакета. Выбирается маршрут с наименьшей метрикой. Метрика отражает количество переходов, скорость прохождения пути, надежность пути, пропускную способность пути и средства администрирования. if интерфейс Указывает индекс интерфейса, через который доступна точка назначения. Для вывода списка интерфейсов и их соответствующих индексов используйте команду route print. Значения индексов интерфейсов могут быть как десятичные, так и шестнадцатеричные. Перед шестнадцатеричными номерами вводится 0х. В случае, когда параметр if пропущен, интерфейс определяется из адреса шлюза. /? Отображает справку в командной строке.

Большие значения в столбце metric таблицы маршрутизации - результат возможности протокола TCP/IP автоматически определять метрики маршрутов таблицы маршрутизации на основании конфигурации IP-адреса, маски подсети и стандартного шлюза для каждого интерфейса ЛВС. Автоматическое определение метрики интерфейса, включенное по умолчанию, устанавливает скорость каждого интерфейса и метрики маршрутов для каждого интерфейса так, что самый быстрый интерфейс создает маршруты с наименьшей метрикой. Чтобы удалить большие метрики, отключите автоматическое определение метрики интерфейса в дополнительных свойствах протокола TCP/IP для каждого подключения по локальной сети.

Имена могут использоваться для параметра конечная_точка, если существует соответствующая запись в файле базы данных Networks, находящемся в папке системный_корневой_каталог\System32\Drivers\Etc. В параметре шлюз можно указывать имена до тех пор, пока они разрешаются в IP-адреса с помощью стандартных способов разрешения узлов, таких как запрос службы DNS, использование локального файла Hosts, находящегося в папке системный_корневой_каталог\system32\drivers\etc, или разрешение имен NetBIOS.

Если команда - print или delete, параметр шлюз опускается и используются подстановочные знаки для указания точки назначения и шлюза. Значение конечной_точки может быть подстановочным значением, которое указывается звездочкой (*). При наличии звездочки (*) или вопросительного знака (?) в описании конечной точки, они рассматриваются как подстановки, тогда печатаются или удаляются только маршруты, соответствующие точке назначения. Звездочка соответствует любой последовательности символов, а вопросительный знак - любому одному символу. 10.*.1, 192.168.*, 127.* и *224* являются допустимыми примерами использования звездочки в качестве подстановочного символа.
При использовании недопустимой комбинации значений конечной точки и маски подсети (маски сети) выводится следующее сообщение об ошибке: «Маршрут: неверная маска подсети адреса шлюза». Ошибка появляется, когда одно или несколько значений разрядов в адресе конечной точки равно 1, а значения соответствующих разрядов маски подсети - 1. Для проверки этого состояния выразите конечную точку и маску подсети в двоичном формате. Маска подсети в двоичном формате состоит из последовательности единичных битов, представляющей часть сетевого адреса конечной точки, и последовательности нулевых битов, обозначающей часть адреса узла конечной точки. Проверьте наличие единичных битов в части адреса точки назначения, которая является адресом узла (как определено маской подсети).
Параметр -p поддерживается в команде route только в операционных системах Windows NT 4.0, Windows 2000, Windows Millennium Edition и Windows XP. Этот параметр не поддерживается командой route в системах Windows 95 и Windows 98.

Эта команда доступна, только если в свойствах сетевого адаптера в объекте Сетевые подключения в качестве компонента установлен протокол Интернета (TCP/IP).
Примеры

вывести на экран все содержимое таблицы IP-маршрутизации, введите команду:

либо команду

Чтобы вывести на экран маршруты из таблицы IP-маршрутизации, которые начинаются с 10., введите команду:

route print 10.*

Чтобы добавить маршрут по умолчанию с адресом стандартного шлюза 192.168.12.1, введите команду:

route add 0.0.0.0 mask 0.0.0.0 192.168.12.1

Чтобы добавить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1, введите команду:

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1

Чтобы добавить постоянный маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1, введите команду:

route -p add 10.41.0.0 mask 255.255.0.0 10.27.0.1

Чтобы добавить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1 и метрикой стоимости 7, введите команду:

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7

Чтобы добавить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0 и следующим адресом перехода 10.27.0.1 и использованием индекса интерфейса 0х3, введите команду:

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 if 0x3

Узнать ID нужного вам интерфейса поможет заметка

Чтобы удалить маршрут к конечной точке 10.41.0.0 с маской подсети 255.255.0.0, введите команду:

route delete 10.41.0.0 mask 255.255.0.0

Чтобы удалить все маршруты из таблицы IP-маршрутизации, которые начинаются с 10., введите команду.

Инструкция

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

Используйте знак «» (обратный слэш) в качестве разделителя между каталогами при записи полного пути к файлу в системе Windows. Ставьте этот знак перед названием каждой папки и перед названием файла. Например:C:Program FilesAvirakeyHBEDV.KEY

Начинайте запись с двух обратных слэшей («\»), если она содержит полный путь к сетевому ресурсу в системах под управлением ОС Windows. За двумя слэшами должно следовать имя компьютера в сети, а остальная часть пути к файлу должна быть записана обычным способом. Например, полный путь к файлу file.txt, размещенному в папке SharedDocs с именем HomeComp, должен быть записан так:\HomeCompSharedDocsfile.txt

Используйте прямой слэш ("/") при указании пути к файлам в Unix-системах. Например:/home/folderOne/file.txt

Указывайте тип протокола в начале записи полного пути к файлам, размещенным в интернете. В этих адресах в качестве разделителя используются прямой слэш..pngЗдесь http: указывает тип протокола (HyperText Transfer Protocol - «протокол передачи гипертекста»). «Полный путь» применительно к интернет-адресам принято называть «абсолютным адресом».

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

Начиная с корневого каталога, пройдите весь путь , щелкая на плюсиках, до папки программы в папке «Program Files». В адресной строке окажется прописанным весь путь до программы.

Используя контекстное меню или сочетание клавиш «Ctrl»+«С», скопируйте в буфер обмена путь , а затем вставьте его в форму или строку команды. После названия папки поставьте «» и наберите имя исполняемого файла. Путь к программе прописан.

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

Вам понадобится

  • - Компьютер с ОС Windows.

Инструкция

Для того чтобы определить путь к файлу , нажмите по ярлыку, для которого вы хотите его установить, правой кнопкой мышки. После этого возникнет контекстное меню, в нем необходимо выбрать команду «Свойства». Далее появится окно, в котором щелкните по вкладке «Ярлык».

В возникшем окне есть несколько параметров. Параметр «Рабочая папка» указывает название папки, где расположен файл, на который ссылается ярлык, а параметр «Объект» - полный путь к нему. Сначала в строке «Объект» отмечается раздел жесткого диска, а потом уже непосредственно папка, в которой он лежит. Снизу окна находится параметр «Расположение файла». Если вы нажмете по нему левой кнопкой мышки, то откроется окно с папкой, где хранится файл.

Если, например, вам нужно найти путь к файлу определенного процесса, который запущен в операционной системе, то сделать это можно так. Нажмите на клавиатуре сочетание клавиш Ctrl-Alt-Del, после чего на экране компьютера появится окно. В этом окне и нужно выбрать «Диспетчер задач». Либо нажмите сочетание клавиш Ctrl-ShIft-Esc, и он запустится сразу.

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

Если вам достаточно часто приходится иметь дело со всякого рода скриптами, то рано или поздно возникнет задача точного указания адреса файла, который надо передать программе. Чаще всего это делается с помощью абсолютного адреса. «Абсолютным» или «полным» путем к файлу называют строковую переменную, содержащую перечисление всех вложенных друг в друга папок на пути от корневого каталога до этого файла.

Инструкция

Если нужно узнать абсолютный к файлу , хранящемуся в компьютере под управлением ОС Windows, то сделать это можно с помощью менеджера файлов этой системы - Проводника. Откройте его, дважды щелкнув иконку «Мой компьютер» на рабочем столе или выбрав аналогичный пункт из главного меню «Пуск». Есть и другой способ - воспользоваться сочетанием клавиш Win и E.

По дереву папок в левом фрейме Проводника перейдите в каталог, содержащий нужный вам файл. Выделите и скопируйте (Ctrl + C) содержимое адресной строки файл-менеджера - это и есть полный путь к папке, хранящей файл. Если вы используете версию Windows 7, то адресная строка Проводника будет содержать путь к файлу в виде, удобном для использования, но не соответствующем стандарту. Для приведения его к стандартному виду кликните левой кнопкой мышки где-либо на свободном от надписей пространстве адресной строки - этого будет достаточно, чтобы приложение отобразило путь нужным образом и выделило его, а вам останется только скопировать выделенное.

Вставьте скопированный путь в какую-либо страницу, открытую в любом текстовом редакторе. Он будет указывать полный адрес папки, но не файла - допишите имя файла, включая расширение, отделив его от вставленной строки обратным слэшем (). Чтобы не ошибиться, название файла тоже можно скопировать в Проводнике. Для этого кликните его один раз мышкой, нажмите функциональную клавишу f2, затем сочетание клавиш ctrl + c, и выйдите из режима редактирования названия нажатием клавиши Esc.

В Unix-системах для разделения папок при указании адреса файла вместо обратного слэша () используйте обычный (/). Чаще всего необходимость узнать полный путь к файлу на компьютерах, работающих под управлением ОС Unix возникает для использования этого файла серверными скриптами, применяемыми в интернет-программировании. В таких случаях можно воспользоваться функционалом соответствующего языка программирования. Например, в языке PHP полный путь к исполняемому файлу содержит переменная окружения с названием script_filename ($_SERVER["SCRIPT_FILENAME"]).

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

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

Если по какой-либо причине вы вынуждены пользоваться интерфейсом командной строки, задействуйте DOS-команду where. Ей нужно задать параметр R, чтобы сделать поиск файла рекурсивным, то есть, чтобы просматривались все вложенные папки. Кроме него обязательно укажите название нужного файла, а необязательным параметром может быть известная вам часть пути к нему. Эта команда тоже осуществляет поиск, поэтому указав хотя бы часть пути, вы сократите затраченное на нее время. Например, если необходимо получить полный путь к файлу с названием RM.csv, о котором известно лишь, что он находится на диске F, команда должна быть написана так:where /R f: RM.csv

Набрав команду и ее параметры, нажмите Enter и по окончании поиска найдете полный путь в следующей строке интерфейса. К сожалению, выделить и скопировать только эту строку здесь нельзя, поэтому кликните правой кнопкой в любом месте окна, выберите в меню команду «Выделить все», а затем нажмите Enter. Таким способом вы поместите в буфер обмена все содержимое интерфейса командной строки, которое в каком-либо текстовом редакторе можно очистить от лишних строк.

Указать путь к папке. Главный вопрос нашей статьи на которого найдут ответа уважаемые ггости - это вопрос: Как указать путь к папке на виндовс и в начале статьи мы хотим рассказать именно про это. Для того что бы узнать адрес папки, предлагаем уважаемому читателю включить свой компьютер и войти в Мой Компьютер. Потом найти эту папку на которую хотите указать путь и взглянуть на верхнюю часть окна. На верхней части окна есть пункт под названием адрес и рядом с ним ячейка похожая на ту ячейку в нашем браузере к которому пишем адреса сайтов. На этой ячейке и будет адрес вашей папки. Скопируйте её и вставьте на документе в которым хотите указать адрес папки.

ZIP папка. Многие люди скачивают с различных сайтов, файлы архивированные в формате ZIP и затрудняются их открыть. Мы хотим на протяжении этой статьи рассказать таким людям и об открытии такого формата архивов и соответственно продолжая читать, уважаемый гость узнает о том как открыть ZIP папку. Для того что бы открыть архивную папку ZIP, вам надо с начало скачать и установить программу ZIP архиватор WinRAR. Для скачки архиватора есть два способа: Можете поискать в Гуглу или в Яндексе данный архиватор либо установить ZIP архиватор с диска виндовс. На сегодняшний день на всех дисках в формате DVD с виндовс, есть дополнительные программы и среди дополнительных программ виндовса обязательно должно быть ZIP архиватор. После установки архиватора, просто кликните на архивный файл и она откроется.

Удалить папку с диска C. Для тех кто не знает как удалить папку с диска C, объясняем: Сразу нужно сказать что в дике C удалить папки с названиями: Documents and settings, Program files и Windows не возможно. Но возможно удаления некоторых папок внутри этих папок которые Не относятся к системным программам или файлам. Если какой то файл который не имеет не какой принадлежности к системе, не удаляется - это может означать что в данной папке содержится вирус и не допускает к удалению.

Папка Рабочий стол. Пред последняя тема нашей статьи посвящается вопросу: Как найти папку рабочий стол? Для того что бы найти папку рабочий стол, надо зайти в Мой Компьютер. Потом заходим в диск С и переходим в папку Documents and settings. На Documents and settings есть папка All users внутри которой и имеется папка Рабочий стол.

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

Надеемся что это статья вам помогло решить проблемы и желаем вам удачи в личной жизни!

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

А такая необходимость возникает у всех, как бы не были просты в управлении движки CMS, иногда приходится вручную прописывать путь к папке или файлу, либо загружать файлы, такие как robots.txt , либо файлы, подтверждающие права на владение сайтом в кабинетах веб мастера Google или Яндекс.

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

А директория WordPress не что иное, как папка, в которой находятся файлы, необходимые для работы WordPress, по аналогии с компьютерной программой, грубо говоря.

Так как-же все-таки прописать этот путь к папке, либо файлу?

Как загрузить файл в папку с сайтом WordPress

Давайте сначала посмотрим как загрузить файлы, на примере robots.txt и файла custom.css:

Дополнительно

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

Загружаем в папку с сайтом файл Robots.txt

Мне нужно загрузить на хостинге в папку с сайтом файл robots.txt .

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

Нужно найти корневую папку с сайтом.
На диаграмме корень сайта — wordpress
На хостинге TimeWeb это папка название сайта (по умолчанию wordpress) — publik.html
На хостинге Hostland — папка название сайта — www

Открываю одну из этих папок, в зависимости от хостинга и загружаю, воспользовавшись файловым менеджером, заранее подготовленный файл robots.txt . У меня есть статья, в которой затронута тема использования файлового менеджера TimeWeb . Там же заодно можно узнать как защитить сайт.

Загружаем в папку шаблона сайта файл custom.css

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

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

Тут все просто. Опять можно воспользоваться схемой. На схеме показан путь к файлу
custom.css , который находится в папке с темой, в поддериктории css

Нужно просто последовательно прописать путь к папке и находящемуся в ней файлу, где:
Корень сайта — wordpress заменяем на доменное имя сайта.

У меня путь к файлу custom.css будет выглядеть следующим образом

http://сайт/wp-content/themes/main-theme/css/custom.css

Теперь, чтобы подключить его, нужно всего-лишь открыть файл header.php (см. схему) и прописать в нем

Абсолютный путь к папкам, файлам

Иногда нужно прописать абсолютный путь к папкам, файлам. Например, при смене хостинга. А точнее эта папка называется корневой. В этом случае нужно создать небольшой скрипт, и поместить его в корневую папку WordPress. В нее я загружал файл robots.txt , об этом написано выше.

Просто скопируйте этот скрипт и в блокноте поставьте расширение файлу.php Например test.php Имя файлов и папок пишите латинскими буквами.

"; echo "Полный путь к скрипту и его имя: ".$_SERVER["SCRIPT_FILENAME"]."
"; echo "Имя скрипта: ".$_SERVER["SCRIPT_NAME"]; ?>

Этот файл заливаем на хостинг в корневую папку. В моем случае это папка publik . Теперь набираем (в этом примере) http://имя домена/publik/test.php и вбиваем в окно браузера. Если вы сделали все правильно, то на экране появится абсолютный путь к папкам, файлам .

При разработке сайта часто приходится прописывать пути к файлам, ссылки на документы, страницы.
В книгах по компьютерным технологиям можно часто встретить употребление терминов абсолютного и относительного пути к файлам. Часто автор не разъясняет, что означает тот или иной путь. Читатель, соответственно, путается, когда автор в последствии говорит об использовании абсолютного и(или) относительного пути.
Допустим, у Вас есть сайт и Вам нужно создать гиперссылку(ссылку) на одну из страниц сайта. Здесь нужно выбрать какой использовать тип пути: относительный или абсолютный.

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

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

Абсолютный путь

Когда ссылка представляет из себя полный URL файла или страницы, это и есть абсолютный путь . При этом в адресе должен присутствовать используемый протокол. Например, http://www.сайт — это абсолютный путь к конкретному веб-сайту. В данном случае абсолютный путь к главной странице моего блога. Где протоколом является http , а www.сайт доменом(именем).

Если указывать ссылку на католог, например http://yourdomain.ua/web/ то будет загружаться(отображаться) индексный файл. Это правило применимо в основном к статическим сайтам. Так как при использовании языка программирования можно создать внутренний роутинг. Индексный файл обычно представляет из себя файл с именем index.php, index.html, index.phtml, index.shtml . Для того что бы использовать другой индексный файл, нужно создать в нужной директории файл с именем.htaccess, и в нем прописать некоторую директиву. Изменение и создание файла.htaccess, как и роутинг с помощью языка программирования, выходит за рамки этой статьи.

В основном абсолютный путь используется, тогда, когда нужно сослаться на другой сайт. Иными словами если Вы хотите отправить посетителя на другой сайт, то нужно использовать абсолютный путь. Хотя, такой путь можно использовать и на собственном сайте. Но многие придерживаются того, что ссылки внутри сайта должны быть относительными.
Использование абсолютного пути может повлечь за собой некоторые проблемы. Например при переносе сайта с локальной машины на сервер(это в том случае, если вы использовали на локальной машине адреса в виде http://localhost/sitename.ua/…). Трудности могут возникнуть, тогда, когда появится необходимость в смене домена(имени сайта). Хотя, все эти трудности решаемы, но на них придётся потратить некоторое количество времени.
Когда есть минусы, значит должны быть и плюсы. Возьмём к примеру такую ситуацию, как кража контента с вашего сайта. На практике я уже не раз убедился в том, что текст воруют целиком, при этом не оставляя обратной ссылки на оригинал. Так вот, при использовании абсолютных путей, можно получить обратные ссылки с сайта, на котором находится сворованный контент. Но это только в том случае если у Вас внутренняя перелинковка осуществлялась с использованием абсолютных путей. Хотя это не всегда работает, но я уже не раз замечал появление ссылок с чужих сайтов, на которых был расположен мой контент.

Немного отступив от темы хочу вкратце рассказать про то что такое URL .

Каждая веб-страница или документ в сети Интернет имеет собственный уникальный адрес, который и называется URL .
URL — единообразный локатор (определитель местонахождения) ресурса. Расшифровывается URL как Uniform Resource Locator(унифицированный адрес ресурса). Можно так же встретить и такую расшифровку как Universal Resource Locator(универсальный локатор ресурса). Этот способ записи адреса стандартизирован в сети Интернет. Более общая и широкая система идентификации ресурсов URI постепенно заменяет термин URL.
URI - это символьная строка, которая идентифицирует какой-либо ресурс: документ, файл, и т.д. Конечно, здесь подразумеваются ресурсы сети Интернет.

Относительный путь

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

Путь относительно документа

Именно путь относительно документа используется чаще всего. Такие ссылки ещё называются локальными. В основном такой путь используется тогда, когда текущий и связанный документ(страница) находятся в одной директории. Если переместить документ в другую директорию, то путь(ссылку) придётся менять. Хотя можно ссылаться и на документы(страницы) из других директорий. Для этого путь прописывается от текущего документа до целевого документа(страницы). При этом путь относительно документа должен задаваться в зависимости от структуры директорий.
Возьмём к примеру простейшую структуру статического сайта.

Предположим, что каждое изображение в каталоге images нужно вставить в соответствующие страницы home.html , products.html , contact.htm l. Для того что бы вставить изображение к примеру на страницу «home.html», нужно прописать путь, где расположено изображение. Если использовать путь относительно документа, то нужно будет прописать в коде страницы следующее:

Этот код для вставки изображения на страницу — неполный. Так как он не содержит нескольких важных атрибутов, таких как ширина, высота и др. Атрибут src , здесь служит для указания пути к файлу. Здесь опущены все остальные атрибуты, так как они сейчас не столь важны. Главное сейчас, что бы Вы имели представление о том, как выглядит путь относительно документа.
При использовании путей относительно документа отсутствует часть абсолютного пути. Часть абсолютного пути, здесь усекается, как для текущего документа(страницы), так и для связанного. Здесь используется только та часть пути, которая всегда меняется.
Напомню ещё раз про то, что при использовании пути относительно документа, нужно учитывать исходное расположение файлов.

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

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

Как видно из приведённого выше кода, к пути теперь добавилось следующее: ../ . Как раз эта последовательность символов ../ и служит для перехода на одну директорию(уровень) выше в иерархии каталогов. Путь в вышеприведённом коде можно прочесть так: «Перейти на один каталог выше(назад), зайти в директорию images и взять от туда файл products.png «.
Если ../ означает переход на одну директорию(уровень) выше в иерархии каталогов, то символ / обозначает переход на один уровень ниже.
Последовательность символов ../ можно использовать в пути неоднократно. Например, если файл products.html переместить в три директории вложенные в друг друга, то нужно будет использовать следующий код:

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

Путь относительно корня сайта

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

В качестве web-сервера на локальной машине может выступать — . Который позволит у себя на компьютере создать среду для созданию сайтов и их предварительного тестирования.

Корневой относительный путь не содержит ни протокола http, ни доменного имени. И как я уже говорил начинается с указания символа / , который указывает на корневую директорию. В этой директории обычно располагается индексный файл главной страницы.

Например, /images/products.png обозначает, что файл products.png находится в папке images , которая расположена в корневом каталоге.

Самый простой способ определить корневой относительный путь — взять абсолютный и отбросить http:// и имя хоста.

Пример
Иногда бывает нужно, что бы информацию одной страницы использовали другие страницы сайта. Часто это делается для того что бы сократить количество повторяемого кода на каждой странице. Допустим есть файл _contact.html , который содержит информацию о телефонных номерах, e-mail и содержит изображение contact.png . (Пускай это будет небольшая таблица, которая будет располагаться на каждой странице сайта.)

Следующий код предназначен для вставки изображения «contact.png».

Код, который необходим для вставки одного файла в другой, выходит за рамки этой статьи. Здесь все зависит от используемого языка программирования.

Я надеюсь, что Вы уже знаете какой тип пути использовался в вышеприведённом коде. Если нет, тогда посмотрите приведённое выше определение пути относительно документа.
Теперь, когда посетитель зайдет на такие страницы сайта как home.html , contact.ntml , он увидит прекрасно отображаемую страницу. В каждую из которых вставлен файл _contact.html , в который, в свою очередь, вставлено изображение contact.png .
Другими словами зайдя, к примеру, на страницу home.html , происходит следующее: «Выполняется код основной страницы home.html . Затем вставляется и исполняется код страницы _contact.html . Код страницы _contact.html , говорит что нужно перейти в директорию images и взять от туда изображение contact.png «.
Если опустить сам код для вставки, то все работает отлично. Но вот если запустить страницу products.html , то произойдет ошибка. Так как код будет пытаться найти директорию images и файл contact.png в директории products . Но такой директории там не существует, из за чего собственно и возникает проблема.
Становится ясным, что использовать путь относительно документа здесь нельзя.
Конечно здесь можно использовать абсолютный путь. О плюсах и минусах данного подхода я говорил выше.
В общем говоря, это одна из ситуаций, когда нужно использовать путь относительно корня сайта. При использовании пути относительно корня сайта, ссылка будет всегда начинаться с корневого каталога(корня сайта). Такой тип пути позволит использовать код для вставки, например изображения, независимо от иерархии сайта, и его директорий.
Использование пути относительно корня сайта в вышеприведённом примере, позволит избежать проблем, со вставкой изображения. Потому как независимо от того где будет использовать такой тип пути, он всегда найдет указанный в нем файл.
Путь относительно корня сайта, очень похож на путь относительно документа. Для того что бы создать путь относительно корня сайта, нужно добавить символ / в начало пути.

Теперь изображение будет корректно вставляться на любой из страниц сайта.

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

Публикации по теме