Использование минимальных адресов URL

ispolzovanie minimalnyh adresov url Сценарии на стороне сервера

Поскольку броузеры запоминают интернет-адрес предыдущей страницы, адреса URL, встроенные в HTML-файлы, часто могут опускать названия протоколов и имена серверов, а также путь к каталогу файла. При отсутствии каких-то частей броузер просто использует их значения, взятые из адреса предшествующей страницы. Такой минимальный синтаксис действует как для адресов URL, встроенных в гиперссылки, так и для действий форм (с формами мы познакомимся ниже). Например, внутри страницы, полученной из каталога dirpath на сервере http://www.server. com, минимальные адреса в гиперссылках и действиях форм, такие как:

<A HREF="more.html">

<FORM ACTION="next.py" …>

обрабатываются в точности так же, как если бы был задан полный адрес URL с явными составными частями, содержащими имя сервера и путь к каталогу:

<A HREF="http://www.server.com/dirpath/more.html">

<FORM ACTION="http://www.server.com/dirpath/next.py" …>

Первый минимальный URL ссылается на файл more.html на том же сервере и в том же каталоге, откуда получена страница, содержащая эту гиперссылку. Броузер расширяет его до полного URL. В компоненте адреса URL пути к файлу может также применяться синтаксис относительного пути в стиле Unix. Например, тег гиперссылки типа <A HREF="../ spam.gif"> указывает на GIF-файл на сервере в родительском каталоге файла, содержащего URL этой ссылки.

К чему нужна вся эта возня с укороченными адресами URL? Помимо увеличения срока службы клавиатуры и сохранения зрения главным преимуществом таких минимальных адресов URL является отсутствие необходимости изменять их при перемещении страниц в новый каталог или на другой сервер — сервер и путь логически определяются при использовании страницы, а не задаются жестко в ее разметке HTML. В противном случае последствия могут оказаться достаточно болезненными: примеры, содержащие явные ссылки на сайты и имена путей в адресах URL, находящихся в коде HTML, нельзя копировать на другие серверы без внесения изменений в исходный код разметки. Помощь в этом могут оказать специальные сценарии, но редактирование исходного кода разметки чревато появлением ошибок.

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

В итоге оказывается, что минимальные адреса URL лучше переносимы, но успешнее работают, когда все страницы действительно загружаются из Интернета. Чтобы упростить работу с примерами, приведенными в этой книге, в адресах URL, содержащихся в них, часто опускаются составляющие с именем сервера и путем к каталогу. Для данной книги превращение минимального адреса URL страницы или сценария в истинный происходит добавлением перед именем файла в адресе URL строки:

http://localhost

Ваш броузер сделает это, если этого не сделаете вы.

Ограничения прав доступа к файлам HTML

Одно дополнительное указание, прежде чем двинуться дальше: если вам потребуется установить примеры на другой сервер, на некоторых платформах может потребоваться предоставить всем пользователям право чтения файлов веб-страниц и их каталогов. Это требуется потому, что их будет загружать из Сети произвольный пользователь (часто некто с именем «nobody», с которым мы познакомимся чуть ниже).

В Unix-подобных системах изменение прав доступа может осуществляться соответствующей командой chmod. Например, обычно достаточно команды оболочки chmod 755 filename; она дает всем права на чтение и выполнение файла filename, а запись разрешается только вам. Такие права доступа к файлам и каталогам являются типичными, но на некоторых серверах могут быть отличия. Загружая файлы HTML на свой сайт, поинтересуйтесь тем, какие соглашения приняты на вашем сервере.

Использованная литература:

Марк Лутц — Программирование на Python, 4-е издание, II том, 2011

Каталог сайтов Всего.ру
Оцените статью
Секреты программирования
Добавить комментарий