Четверг, 2025-01-23, 3:05 AM
Статьи - PHP
Приветствую Вас Гость | RSS
Главная страница Каталог статей Регистрация Вход
Меню сайта

Категории каталога
PHP [158]
Статьи по PHP

Наш опрос
Выбираем ОС
Всего ответов: 192

Начало » Статьи » PHP » PHP

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

Скорее всего все вы, заходя на какой-нибудь сайт, видели ссылки типа - 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_rewrite. Он заменяет ссылки одного типа на другие.
Его использование имеет много плюсов. Во-первых, повышается защита, т.к. хакер
не знает о структуре вашего сайта и о запросах, которые посылает ваш скрипт. Во-вторых,
получаются красивые и легко читаемые ссылки. В-третьих, некоторые поисковики легче
индексируют такие ссылки. Сокращенно это называют ЧПУ (человеко-понятный url).
Итак, начнем менять ссылки вашего сайта...

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

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

rewriteengine on //эта строка включает модуль
rewritebase / //это ссылка на папку вашего сайта

Дальнейшие строки будут зависеть от структуры вашего сайта. Смотрите на пример:

rewriteule ^catalog/dir([0-9]*)/ /module.php?section=catalog&area=dir&id=$1

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

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

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

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

Категория: PHP | Добавил: webmaster (2006-12-06)
Просмотров: 353 | Рейтинг: 0.0 |

Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа

Сервисы

Поиск по каталогу

Друзья сайта

| Ссылки 1 | Ссылки 2 | Ссылки 3 |
www.webmaster.clan.su Каталог+поисковая система be number one Bakililar.az Top Sites Сервис авто регистрации в
каталогах, статьи про раскрутку сайтов, web дизайн, flash, 
photoshop, хостинг, рассылки; форум, баннерная сеть, каталог 
сайтов, услуги продвижения и рекламы сайтов Скрипт для определения тиц (Яндекс CY: индекс цитирования). Определение pr (Google Pagerank). Проверить тиц pr сайта.
Copyright WebMaster.Clan © 2006 Бесплатный хостинг uCoz