«Красивые» URL для Вашего сайта

Сентябрь 26, 2008 / Автор sowich / Рубрики Программинг / Ответ

В настоящее время довольно модно стало использовать УРЛы вида:
host.com/articles/page.html
У многих возникает вопрос, «как это сделать?». Здесь я попытаюсь описать самые распространенные способы «переделки» адресов.

Способ №1:
Хранить на хостинге страницы в папках. То есть если у нас урл имеет вид
articles/page.html то создаем папку articles и в ней файл page.html. Все вроде бы ничего, но данный способ непродуктивен и неудобен. Если страниц 5 то еще ладно, а если их будет 5 000? Мы же не будем создавать 100 папок(к примеру) и в каждой определенное количество файлов. Это крайне неудобно и нецелесообразно.

Способ №2:
В шаблоне прописываем адреса в виде host.com/articles/page.html. Следовательно раз таких директорий и файлов у нас нет, то необходимо написать скрипт, который будет парсить данный урл. Создаем файл .htaccess и прописываем в нем следующие строки:
ErrorDocument 404 /index.php
ErrorDocument 401 /index.php  

Они выполняют функцию перенаправления на скрипт (в нашем случае index.php) если возникают 401 или 404 ошибки. Ну да, они и возникнут, так как на хостинге нет физически того адреса что мы указываем в строке запроса. Это самый простой и не очень продуктивный способ. В том плане что если в apache включено логирование то весь log файл будет заполнен ошибками.

Далее с помощью переменной $REQUEST_URI «разбираем» наш запрос на части и уже далее скриптом выбираем соответсвующие данные.

Способ №3:
Использовать модуль apache под названием mod_rewrite. Описывать все достоинства я считаю тут неуместным, так как модуль довольно сложный и мануалов в Интернете существует куча.

______________________________________________
На шёл тут Интернет-магазин модных украшений BeBeauty, здесь можно приобрести очень стильные подарки для своей девушки, и не очень дорого.

А Вы когда-нибудь катали свою девушку на лимузине? Лимузин на заказ это очень хороший подарок.

Кстати как Вы планируете провести новый год 2009? Я уже спланировал. Всего то пара месяцев осталась … 🙂

Комментарии закрыты.