Человекопонятный URL


Человекопонятный URL (сокр. ЧПУ, также семантический URL, англ. friendly URL[⇨]) — URL-путь, состоящий из понятных слов[1][2][3][4], вместо идентификаторов, и отражающий файловую структуру сайта[⇨]. Например, вместо /c14/3/97/ или /index.php?cat=10&subcat=2&id=41 используется /product/phone/Samsung/.

Человекопонятные пути улучшают удобство использования, кроме того, позволяют по названию ссылки заранее предполагать содержимое страницы по ней[5][1][6] и представлять структуру сайта[1][6].

Технически URL может содержать только буквы латинского алфавита и некоторые символы. Все другие символы, включая русские буквы, кодируются (percent‐encoding) и могут выглядеть вроде %D0%9B%D1%83%D0%BA. Поэтому обычно в адресах используют латиницу, чтобы избегать осложнений для пользователей[⇨][7].

Semantic URL предназначен для повышения удобства использования и доступности веб-сайта или веб-службы, будучи сразу же естественным образом и интуитивно осмысливаемым для пользователей-неспециалистов. Такие схемы URL стремятся отразить концептуальную структуру набора информации и отвязать пользовательский интерфейс от внутреннего представления информации на сервере. Другие причины для использования «чистых» URL включают в себя поисковую оптимизацию (SEO)[8], соответствие REST-стилю архитектуры программного обеспечения, а также уверенность в том, что отдельные веб-ресурсы[англ.] остаются постоянно на том же URL. Это делает Всемирную паутину более стабильной и полезной системой, а также предоставляет более долговечные и достоверные закладки веб-ресурсов (bookmarkable URL), в которые не попадут данные кук или сессии с другого компьютера[9].

Semantic URL также не содержит деталей реализации веб-приложения, на котором базируется страница. Это приносит пользу, уменьшая сложность изменения реализации ресурса в более позднем периоде. Например, многие несемантические URL включают в себя имя файла сценария на стороне сервера[англ.], такого как example.php, example.asp или cgi-bin. Если базовая реализация ресурса изменялась, такие URL должны были бы меняться вместе с ним. Подобно этому, когда URL non-semantic, если база данных сайта перемещалась или реструктуризировалась, была вероятность возникновения неработающих ссылок, как внутренних, так и из внешних сайтов, причём последние могут привести к их удалению из списков поисковых машин. Использование semantic URL предоставляет различным user agent последовательное расположение для ресурсов, не зависящее от внутренней структуры. Ещё одной потенциальной пользой от использования semantic URL является то, что сокрытие внутренней информации сервера или приложения может улучшить безопасность системы.

Friendly URL не содержит много дополнительных символов[10] (например, ? или &[5]). Такой URL — более запоминающийся, и пользователь может сделать вывод, что будет отображено на странице[5].