Переписать движок

редактировать
В Википедии и других сайтах MediaWiki см. Руководство MediaWiki: Короткий URL.

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

СОДЕРЖАНИЕ

  • 1 Применение
  • 2 Преимущества и недостатки
  • 3 Веб-фреймворки
  • 4 Смотрите также
  • 5 Заметки
  • 6 Внешние ссылки

Применение

См. Также: Семантический URL и сокращение URL

Веб-сайты с динамическим содержимым могут использовать URL-адреса, которые генерируют страницы с сервера с использованием параметров строки запроса. Они часто переписываются, чтобы напоминать URL-адреса статических страниц на сайте с иерархией подкаталогов. Например, URL-адрес вики- страницы может быть таким:

http://example.com/w/index.php?title=Page_title

но можно переписать как:

http://example.com/w/Page_title

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

http://www.example.com/Blog/Posts.php?Year=2006amp;Month=12amp;Day=19

Его можно изменить так:

http://www.example.com/Blog/2006/12/19/

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

http://www.example.com/Blog/2006/12/

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

http://example.com/search term

Буду urlencoded браузера, прежде чем он делает запрос HTTP. Сервер может переписать это так:

http://example.com/search.php?q=search%20term

Преимущества и недостатки

Использование перезаписи URL дает несколько преимуществ:

Однако могут быть и недостатки; если пользователь хочет изменить URL-адрес для получения новых данных, перезапись URL-адреса может затруднить построение пользовательских запросов из-за отсутствия именованных переменных. Например, может быть сложно определить дату в следующем формате:

http://www.example.com/Blog/06/04/02/

В этом случае исходная строка запроса была более полезной, поскольку переменные запроса указывали месяц и день:

http://www.example.com/Blog/Posts.php?Year=06amp;Month=04amp;Day=02

Веб-фреймворки

Многие веб-фреймворки включают перезапись URL либо напрямую, либо через модули расширения.

  • HTTP-сервер Apache имеет функцию перезаписи URL, обеспечиваемую модулем mod_rewrite.
  • Переопределение URL-адресов доступно как расширение Microsoft IIS.
  • Ruby on Rails имеет встроенную функцию перезаписи URL-адресов через Routes.
  • Сервлет Jakarta имеет расширяемую перезапись URL-адресов с помощью OCPsoft URLRewriteFilter и Tuckey UrlRewriteFilter.
  • Jakarta Server Faces упростил перезапись URL-адресов с помощью PrettyFaces: URLRewriteFilter.
  • Django использует систему на основе регулярных выражений. Это не является строго переписыванием URL-адресов, поскольку нет сценария для «перезаписи» или даже структуры каталогов; но он обеспечивает полную гибкость перезаписи URL.
  • В Java Stripes Framework встроена функциональность, начиная с версии 1.5.
  • Многие фреймворки Perl, такие как Mojolicious и Catalyst, имеют эту функцию.
  • В CodeIgniter предусмотрена возможность перезаписи URL.
  • lighttpd имеет модуль mod_rewrite.
  • В nginx есть модуль перезаписи. Например, возможно создание многосвязной страницы с несколькими переменными из URI, такого как / f101, n61, o56, d / ifconfig, где несколько отдельных частей, таких как f101, расширяются с помощью регулярных выражений в переменные для обозначения FreeBSD 10.1- РЕЛИЗ и пр.
  • HTTP-сервер Hiawatha имеет набор инструментов URL, который поддерживает перезапись URL.
  • HTTP-сервер Cherokee поддерживает регулярные выражения перезаписи и перенаправления URL-адресов.

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

Смотрите также

Заметки

Внешние ссылки

Последняя правка сделана 2023-04-22 03:05:20
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте