Бывает, что путь к какой-либо папке в реестре указан некорректно. Тому виной могут быть многие причины, в том числе результаты воздействия вредоносных вирусов. Так или иначе проблема требует срочного решения, ведь если путь к какой-либо программе будет указан неверно, это сделает невозможным для неё установку плагинов и обновлений. В общем, вызовет целый ряд проблем, вдобавок, затрудняя работу системы.
При разработке сайта часто приходится прописывать пути к файлам, ссылки на документы, страницы.
В книгах по компьютерным технологиям можно часто встретить употребление терминов абсолютного и относительного пути к файлам. Часто автор не разъясняет, что означает тот или иной путь. Читатель, соответственно, путается, когда автор в последствии говорит об использовании абсолютного и(или) относительного пути.
Допустим, у Вас есть сайт и Вам нужно создать гиперссылку(ссылку) на одну из страниц сайта. Здесь нужно выбрать какой использовать тип пути: относительный или абсолютный.
Очень важно понимать, где какой путь нужно и лучше использовать. Абсолютный путь можно указать только одним способом. А вот относительный в отличии от абсолютного имеет несколько вариантов использования.
Подробнее о том как и где используется абсолютный и относительный путь к файлам
, я попытаюсь вам сегодня рассказать.
Так как большую часть своего времени я уделяю 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
. Но такой директории там не существует, из за чего собственно и возникает проблема.
Становится ясным, что использовать путь относительно документа здесь нельзя.
Конечно здесь можно использовать абсолютный путь. О плюсах и минусах данного подхода я говорил выше.
В общем говоря, это одна из ситуаций, когда нужно использовать путь относительно корня сайта. При использовании пути относительно корня сайта, ссылка будет всегда начинаться с корневого каталога(корня сайта). Такой тип пути позволит использовать код для вставки, например изображения, независимо от иерархии сайта, и его директорий.
Использование пути относительно корня сайта в вышеприведённом примере, позволит избежать проблем, со вставкой изображения. Потому как независимо от того где будет использовать такой тип пути, он всегда найдет указанный в нем файл.
Путь относительно корня сайта, очень похож на путь относительно документа. Для того что бы создать путь относительно корня сайта, нужно добавить символ /
в начало пути.
![]() |
Теперь изображение будет корректно вставляться на любой из страниц сайта.
Надеюсь я немного помог Вам разобраться в том какие пути существуют, и в том когда и где они используются. Теперь можно использовать все типы пути по прямому их назначению.
Многие новички испытывают затруднения, когда возникает необходимость правильно прописать путь к папке, файлу находящемуся в теме WordPress .
А такая необходимость возникает у всех, как бы не были просты в управлении движки CMS, иногда приходится вручную прописывать путь к папке или файлу, либо загружать файлы, такие как robots.txt , либо файлы, подтверждающие права на владение сайтом в кабинетах веб мастера Google или Яндекс.
Принцип действия такой-же как в любом домашнем компьютере. Ведь хостинг выдает место под сайт на своем сервере, а сервер ни что иное, как компьютер, хранилище данных, которые выдаются по запросу. Говоря простым языком, ссылка это и есть по сути, путь к папке, файлу которая находится на сервере , хостинге (одно и то же).
А директория WordPress не что иное, как папка, в которой находятся файлы, необходимые для работы WordPress, по аналогии с компьютерной программой, грубо говоря.
Так как-же все-таки прописать этот путь к папке, либо файлу?
Давайте сначала посмотрим как загрузить файлы, на примере robots.txt и файла custom.css:
Я не стал на диаграмме отображать все папки и файлы. На ней изображены наиболее часто используемые файлы директории WordPress, а так же файлы и папки темы. Пояснения ниже.
Мне нужно загрузить на хостинге в папку с сайтом файл robots.txt .
Я захожу на хостинг, в файловый менеджер и ищу где установлен сайт. На разных хостингах названия папок с WordPress сайтом может отличаться.
Нужно найти корневую папку с сайтом.
На диаграмме корень сайта —
wordpress
На хостинге TimeWeb это папка название сайта (по умолчанию wordpress) — publik.html
На хостинге Hostland — папка название сайта — www
Открываю одну из этих папок, в зависимости от хостинга и загружаю, воспользовавшись файловым менеджером, заранее подготовленный файл robots.txt . У меня есть статья, в которой затронута тема использования файлового менеджера TimeWeb . Там же заодно можно узнать как защитить сайт.
В вордпресс структура файлов и папок абсолютно одинаковая, не зависимо на каком хостинге расположен сайт. Поэтому можно смело пользоваться небольшой схемой, приведенной выше. Как писал ранее, на схеме изображены не все папки и файлы 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 и вбиваем в окно браузера. Если вы сделали все правильно, то на экране появится абсолютный путь к папкам, файлам .
Иногда путь к необходимой Вам папке в реестре указывается не совсем корректно. Причинами могут быть так же и воздействие вредных вирусов. Этой проблеме требуется срочное решение, потому что если путь к нужной программе указан не правильно, значит будет невозможно для неё установить плагины и обновления. И это повлечет за собой множество проблем и затруднится работа системы. В этой статье мы поможем эту проблему и расскажем, как прописать путь к файлу или к папке.
Вариант 1
Вариант 2Рассмотрим, например, домашнюю сеть со следующими данными:
- внутренний ip-адрес модема (default gateway ) - 192.168.1.1;
- маска подсети (subnet mask ) стандартная - 255.255.255.0;
- адрес VPN- сервера для примера - 10.1.1.1,
тогда для прописания статического маршрута в командной строке (Пуск –> Выполнить , или Ctrl+R ) набираем команду
route ADD -p 10.1.1.1 MASK 255.255.255.255 192.168.1.1 METRIC 1
и нажимаем "Ввод ".
Готово!
Создадим специальный файл, который при запуске автоматически зарегистрирует роуты в системе.
Нам понадобится текстовый документ (.txt). Для этого, например, жмем правой клавишей мыши по Рабочему столу –> Создать –> Текстовый документ.
В открывшемся документе пишем команду:
route.exe ADD –p 10.1.1.1 MASK 255.255.255.255 192.168.1.1 METRIC 1
и сохраняем документ: Файл –> Сохранить как:
Тип файла: Все файлы
Имя: atlant.bat
нажимаем кнопку "Сохранить ".Осталось только запустить файл atlant.bat . Готово!
Пояснения :
route.exe подпрограмма работы с маршрутами;
ADD – команда для добавления маршрута на указанный адрес. У нас на 10.1.1.1;
-p – этот ключ нужен, что бы сохранить маршрут. Если его не прописать, то после перезагрузки таблица маршрутов обнулится;
10.1.1.1 – адрес назначения;
MASK – ставим этот параметр перед прописанием значения маски подсети;
192.168.1.1 – адрес основного шлюза. Чаще всего это ip-адрес модема;.
METRIC 1 – параметр, определяющий приоритет указанного выше шлюза. 1- наивысший приоритет (цена). Т.е. если бы в Вашей сети было несколько модемов, то нужно было бы каждому из них задать приоритет – на какой из модемов пакеты, не принадлежащие IP-диапазону Вашей сети, будут адресоваться в первую, вторую очередь и т.д.
Проверить прописанные маршруты можно командой route print
. Для этого заходим в командную строку (Пуск
–> Выполнить
–> cmd
–> Ok).
В открывшемся окне набираем команду route print
и нажимаем "Ввод
".
Внимание!
Постоянные маршруты не следует путать с активными маршрутами (см. рис.)
Для удаления всех существующих постоянных маршрутов служит команда route -f
.
Для удаления какого-то конкретного постоянного маршрута служит команда route delete 10.1.1.1
(10.1.1.1 - указан в качестве примера).
Для Windows Vista
В Windows Vista таблица маршрутизации прописывается аналогично WinXP, однако только под Администратором. В Windows Vista нельзя настроить маршрутизацию из под режима обычного пользователя (даже если ваша учетная запись обладает полномочиями Администратора). Учетная запись администратора создается по умолчанию, но при обычной установке этой ОС она скрыта и отключена.
Запуск командной строки с правами администратора:Пуск –> Поиск –> в поле поиска введите "cmd" –> на найденном файле "cmd.exe" кликните правой клавишей мыши и выберите "Запуск от имени администратора".