Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: как работает mod_rewrite с папками
 
 автор: 1999   (22.12.2006 в 15:34)   письмо автору
 
 

собственно 2 вопроса:
1) хочу, чтоб все урлы заканчивающиеся на число переадресовывались как index.php?announce_id=(число)
2) а вот это потупее... хочу чтоб все файлы с таким расширением переадресовывались на index.php. Пишу такую строку. Вроде работает. Но мне интересно немного другое - когда идет переадресация с папки (например захожу на http://site/folder/), то что происходит? хтаксес проверяет существование этой папки на сервере и только если ее нет переадресовывает на index.php или нет? просто интересен сам механизм.


RewriteRule     ^.*[/]([0-9]+)[/]?$             ?announce_id=$1   [L]
RewriteRule !\.(gif|css|jpg|zip|doc|js|swf|mp3|mpg|php|txt|ico)$ /index.php [L]

   
 
 автор: cheops   (22.12.2006 в 22:57)   письмо автору
 
   для: 1999   (22.12.2006 в 15:34)
 

Если включён индексный файл (а он как правило включён), то Apache ищет индексный файл и затем формирует полный путь http://www.site.ru/index.php после этого mod_rewrite ищет чем бы этот путь замнить, и находит и замняет его на http://www.site.ru/index.php - подсталяя необходмую страницу.

   
 
 автор: 1999   (23.12.2006 в 03:57)   письмо автору
 
   для: cheops   (22.12.2006 в 22:57)
 

а первое правило сделано правильно?

   
 
 автор: 1999   (25.12.2006 в 11:10)   письмо автору
 
   для: 1999   (23.12.2006 в 03:57)
 

.

   
 
 автор: glsv (Дизайнер)   (26.12.2006 в 06:19)   письмо автору
 
   для: 1999   (23.12.2006 в 03:57)
 

Зависит от вашей задачи. Я бы изменил вот так:

RewriteRule  ([0-9]+)/?$  /index?announce_id=$1 [L]

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования