5 примеров ЧПУ Apache


Человекопонятные URL предполагают сокращение адресов страниц до максимально лаконичных и понятных. Они создают подобие естественной для человека логической структуры данных на сервере, представляя её в виде иерархичной (древовидной) структуры, аналогично файловой системе.
Ниже приведены 5 примеров использования данного модуля

1) Переделываем product.php?id=12 в product-12.html
Это простое перенаправление, в котором расширение .php спрятано из адресной строки браузера и динамический УРЛ (с знаком вопроса "?") преобразован в статический адрес:
RewriteEngine on
RewriteRule ^product-([0-9]+)\.html$ product.php?id=$1

2) Переделываем product.php?id=12 в product/ipod-nano/12.html
Эксперты SEO всегда предлагают показывать главное ключевое слово в УРЛе. В пример Вы можете видеть название продукта в УРЛе.
RewriteEngine on
RewriteRule ^product/([a-zA-Z0-9_-]+)/([0-9]+)\.html$ product.php?id=$2

3) Перенаправление адресов без www URL на адреса с www
Если Вы введете yahoo.com в браузере, Вас перенаправит на www.yahoo.com. Для проделывания такой же операции на Вашем сайте добавьте следующий код в файл .htaccess:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^optimaxwebsolutions\.com$
RewriteRule (.*) http://www.optimaxwebsolutions.com/$1 [R=301,L]
УРЛ сайта, конечно же, поменяйте на свой. Для чего делать такой редирект? Чтобы избежать дублирования сайта поисковиками с www и без www.

4) Переделываем yoursite.com/user.php?username=xyz в yoursite.com/xyz
В файл .htaccess добавляем следующие строки:
RewriteEngine On
RewriteRule ^([a-zA-Z0-9_-]+)$ user.php?username=$1
RewriteRule ^([a-zA-Z0-9_-]+)/$ user.php?username=$1

5) Перенаправление домена на новый поддомен или директорию.
Допустим, Вы сделали редизайн на сайте и обновленный сайт находится в директории new в корне сайта. То есть новый сайт доступен по адресу test.com/new. Перенос файлов из одного места в другое может быть довольно трудоемким процессом, так что просто добавьте следующие строки в файл .htaccess и разместите его в корневой директории:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^test\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.test\.com$
RewriteCond %{REQUEST_URI} !^/new/
RewriteRule (.*) /new/$1
Теперь при обращении к www.test.com все файлы будут браться из test.com/new

Оцените статью или поделитесь ей в соцсетях:

+ 0 | - 0

Рекомендуемые статьи:


Комментарии

Нет комментариев к данной статье.

Оставьте комментарий!

Поля обозначенные как * требуются обязательно. Перед постингом всегда делайте просмотр своего комментария.