|
|
|||
|
wm-help.net -> Статьи веб-мастера -> mod_rewrite -> Псевдостатика (mod_rewrite). Часть 1Псевдостатика (mod_rewrite). Часть 1
Автор: Беляев Александр
Сайт Автора: wm-help.net
E-mail Автора: admin@wm-help.net
Дата написания: 18.03.2006
Эта статья была написана мной во время разработки нового движка для сайта. Как и все пользователи интернета, я с некоторого времени (примерно год назад) стал замечать, что все больше и больше популярных сайтов переходят от url вида http://site.net?pid=general&id=5&s=98465 на псевдостатику или на ЧПУ (Человеку Понятный УРЛ), т.е. вместо http://site.net?pid=general&id=5&s=98465 в строке браузера будет что-то похожее на http://site.net/general/45/5/98465/. И я стал искать документацию о том, что пока не понимал. Нашел пару статей, в которых подобное делалось с помощью .htaccess и 404 ошибки, но это было не совсем то, что мне нужно и тогда мне случайно попалась документация по mod_rewrite. mod_rewrite – это специальный модуль для серверов Apache, который был специально сделан для создания сайтов с ЧПУ. Он был написан в апреле 1996 года и эксклюзивно подарен The Apache Group в июле 1997. Модуль представляет собой библиотеку расширения для серверов типа Apache. Находится в папке modules, в корневой папке апача и называется обычно mod_rewrite.so (устанавливается отдельно). С помощью mod_rewrite можно всего парой строк в .htaccess сделать понятный для человека url. Для упрощения всех команд и правил этот модуль использует Perl-совместимые регулярные выражения. Например, при использовании следующего правила: RewriteRule ^([A-Za-z]+)/([0-9]+)$ index.php?dir=$1&s=$2 [L] Запрос вида http://site.net/shop/50/ будет рассматриваться сервером как http://site.net/index.php?dir=shop&s=50 и плюс ко всему контроль ввода значений, а это уже какая-никакая, но защита. Т.к. переменной dir может быть присвоено толь значение из латинских букв, исключая символы, а переменной s только целочисленные значения. Для установки mod_rewrite вам нужно его сначала где-нибудь скачать, поищите в Яндексе “mod_rewrite”, обязательно найдете. Затем, открываете папку с модулями апача, у меня это usr/local/apache/modules/ и копируете туда mod_rewrite.so. Затем заходите в папку usr/local/apache/conf/ и открываете httpd.conf, находите строчку #LoadModule rewrite_module modules/mod_rewrite.so и убираете #. Если такой строчки нет, то добавляете эту строчку в любое место. Затем ниже дописываете RewriteEngine On, для того, что бы это все работало. А что бы изменения вступили в силу вам необходимо перезапустить сервер. Если у вас нет прав доступа к файлам apache, тогда обращайтесь к своему хостеру с просьбой или требованием (в случае если у вас платный хостинг) установить \ активировать модуль mod_rewrite.so. И еще один совет на последок, прежде чем вносить изменения в httpd.conf, настоятельно рекомендую сделать его резервную копию, а то мало ли что. О том, как применять mod_rewrite в программировании и создании сайтов читайте в следующей части статьи. Если у вас есть вопросы или дополнения, или вы просто с чем-то не согласны пишите мне на gid87@mail.ru и заходите на мой сайт http://wm-help.net/ В случае не выполнения данного обязательства, возможно обращение в суд. Другие статьи из раздела "mod_rewrite"
Преимущества индексации страниц с mod_rewrite Псевдостатика (mod_rewrite). Часть 2 Псевдостатика (mod_rewrite). Часть 1 |
|
| бодибилдинг | Строим Домик | RU-домены за 170 рублей | Copyright © "В помощь Веб-Мастеру" (Alexander D. Belyaev) 2005-2008. При перепечатке любого материала видимая ссылка на источник "В помощь Веб-Мастеру" и все имена, ссылки авторов обязательны! Время генерации страницы: 0.048 |