$813.01


$553.64


$277.98


Как пользоваться модулем mod_rewrite

Наверное, все из вас знают что такое интернет, сайт и Apache (веб-сервер). Немного углубившись в структуру веб-сервера скажу, что у апача есть еще и много модулей, которые обеспечивают работоспособность сайту. Сегодня вы узнаетечто за модуль mod_rewriter, что он делает и как его настраивать...

Скорее всего все вы, заходя на какой-нибудь сайт, видели ссылки типа — http://www.web-coder.ru/files/ или http://web-coder/states/state_553.html. Ну, с первым вариантом все просто скажете вы: в каталоге лежит файлик index.php и он загружается по умолчанию, вот поэтому адрес и имеет такой вид. Допутим, но что делать со вторым? Ведь врятли на крупном портале каждая статья будет редактироваться и вставляться в файл *.html рукаим? А как же скрипты на странице? Неужели настраивали весь сервер? Но это непрактично ?!


На самом деле страничка имеет вид такой — http://web-coder/module.php?area=state&numer=553. Вот этим и занимается модуль mod_rewriter. Он заменяет ссылки одного типа на другие. Его использование имеет много плюсов. Во-первых, повышается защита, т.к. хакер не знает о структуре вашего сайта и о запросах, которые посылает ваш скрипт. Во-вторых, получаются красивые и легко читаемые ссылки. В-третьих, некоторые поисковики легче индексируют такие ссылки. Сокращенно это называют ЧПУ (человеко-понятный URL). Итак, начнем менять ссылки вашего сайта...


Для начала в корневой папке вашего сайта должен находиться файл .htaccess. Если он уже есть хорошо, а если нет, то создайте.

В начале пишите:
RewriteEngine On

эта строка включает модуль
RewriteBase /

это ссылка на папку вашего сайта

Дальнейшие строки будут зависеть от структуры вашего сайта. Смотрите на пример:
RewriteRule ^catalog/dir([0-9]*)/ /module.php?section=catalog&area=dir&id=

Вот эта строка — /module.php?section=catalog&area=dir&id= — означает какой адрес нужно заменить. А вот эта — ^catalog/dir([0-9]*)/ — чем заменить. Заметьте в 1 строке в конце стоит переменная . Она означает любой набор символов, который должен находиться в этом месте и который будут заменять. Во 2 строке стоит запись — dir([0-9]*). Она означает, что будут заменяться все числа из 1 строки.

Понятно?? То есть, если в 1 строке заместо переменной будет стоять число, то 1 строка замениться 2 строкой с этим числом после слова dir. Если же в 1 строке будет слово, то ничего не заменится и не будет работать.

В моем примере я заменяю только числа, но вы можете менять и слова и слова с числами, но для этого вам придется писать более длинное регулярное выражение. Мой вам совет: когда можно, упрощайте вид ссылок. Не надо громоздить ссылки из 300 символов, чем ссылка меньше тем ее лучше запомнить.

Помните, что в самом скрипте вы можете принимать данные из строки запроса как будто там стоит 1 строка, но ссылаться должны на ссылки, имеющие вид 2 строки.

 

Интересное

Вся правда о тИЦ
О эти три магические буквы!!!Как же любят на форумах обсуждать эту тему. Дрожь пробирает, когда открывают новый топик, посвященный тИЦ-у.. А пробирает от того, что тема настолько заезжена и сотни...
Подробнее...
Пишем описания и титлы
Как же повысить эффективность регистрации в каталогах? Ну, во-первых, регистрировать только в беляках (каталоги не требующие за размещение обратной ссылки или денег), во-вторых, использовать как...
Подробнее...
Быстродействие FAT и NTFS
В этой статье я попытаюсь дать оценку быстродействию файловых систем, используемых в операционных системах Windows95/98/ME, а также Windows NT/2000. Статья не содержит графиков и результатов...
Подробнее...
Сущность ООП
Одна из вещей, которую вы могли бы захотеть реализовать — пользовательский интерфейс, предоставляющий доступ к файлу персональных данных. ООП предоставляет вам безусловно лучшие механизмы для его...
Подробнее...
Вскрытие дверей в санкт петербурге вскрытие дверей.
Как выбрать телевизор?
Плазменная панель уже давно перестала быть роскошью. И в эпоху технического прогресса, многие выбирают именно этот вид телевизоров. Конечно, плазма значительно дороже, но у нее есть немало...
Подробнее...
Я живу в FreeBSD
Нередко приходится слышать рассуждения типа: «FreeBSD — прекрасная серверная платформа, но ей не место на рабочем компьютере. Повседневные задачи среднему пользователю проще выполнять на...
Подробнее...
Создание потомка от класса...
Для того, чтобы определить когда мышь над компонентом, в данном примере это будет панель, мы создадим новый класс, который будет являться потомком класса TPanel, и будет обрабатывать некоторые...
Подробнее...
Удалённое восстановление...
Как импортировать большой SQL-скрипт (дамп базы данных MySQL для форума phpBB), если обычными споcобами (загрузка через web-интерфейс phpMyAdmin, Backup cPanel) проблематична, особенно на модемном...
Подробнее...
Режим редактирования в IE
Оказывается ie может редактировать открытые им документы, и не только текст, но и в том числе вставлять имиджи и т.п. По сути дела полноценный html-editor у нас в руках, но только об этом...
Подробнее...
Как сгенерировать файл...
Рано или поздно любой веб-мастер сталкивается с необходимостью защиты своего сайта, более тонкой настройки доступа к различным его параметрам. Один из вариантов — использовать специальный...
Подробнее...