Аббревиатура ЧПУ — человеко-понятный УРЛ (URL).
Для программы (ПО сайта на веб-сервере) каждая статья, раздел на сайте — это очередной объект в базе данных. Каждый объект в базе данных имеет свой так называемый «ключ». Т.е. какой то уникальный маркер, по которому найти и извлечь данные именно этого объекта. Эти маркеры чаще всего просто целые числа, которые последовательно «выдаются» каждому новому объекту базы данных. Потому, самой простой способ сформировать URL (т.е. адрес страницы в сети) — это передать сайту информацию «ключе» в виде:
http://website.domain/scriptname?key=123
Т.е. мы запрашиваем некий сайт [website.domain] через его подпрограмму [scriptname] отправить нам статью с номером 123. На примере известных CMS это запись будет выглядеть так:
http://shra.ru/?p=4398 — Одна из статей на моём сайте, который работает на WordPress,
http://www.farmugroza.ru/node/13866 — а это страница с одного из моих проектов на Drupal
Выглядит такая запись не очень красиво, в данном текст ссылки не может сказать о содержании статьи или раздела. У нас есть только код.
По аналогии с системой доменных имен, пришла идея использовать синонимы в адресе страницы вместо её кода. Т.е. в базе данных на сайте стали дополнительно к ключу хранить и человеко-понятный синоним-ключ страницы. Программа на сервере при этом способна предоставить нужную страницу как по коду так и по её синониму.
Те же примеры, но с использованием синонимов (ЧПУ):
http://shra.ru/2014/02/kak-ocenit-stoimost-veb-sajjta — мы уже можем прочитать в адресе ссылки название статьи
http://www.farmugroza.ru/kontakty.html — здесь явно идет речь о странице с контактами сайта, при этом статья, которая на самом деле лежит в базе данных, замаскирована под статический документ, якобы лежащий в корне сайта файл — kontakty.html.
См. также статью о настройке ЧПУ в популярных CMS.
Как использование ЧПУ влияет на SEO?
Поисковые машины видят вхождение запрашиваемых фраз в ЧПУ. К примеру, яндекс подсвечивает вхождение запрашиваемых ключевых слов в URL страницы, учитывая морфологию и транслит.
Т.е. яндекс понимает, что данный ключ использован в ЧПУ. Так мы можем предположить, что это является одним из факторов, учитываемых для ранжирования данной статьи по запросу с использованием такого ключа. Для нас важным фактом была бы уверенность, что две одинаковые статьи с ключом в ЧПУ и без ключа, ранжируются по данному ключу, даже если сама страница данного ключа не содержит.
Проведем небольшой эксперимент.