BigHarry
Новичок
Странная непонятка с mod_rewrite и php
Столкнулся с чем-то необъяснимо-загадочным. Имеется апач, пхп и mod_rewrite.
Правила для mod_rewrite прописаны в .htaccess таким образом:
============================================
RewriteRule ^forum/([0-9]+).html?$ /forum.phtml?id=$1 [L]
RewriteRule ^catalog/([0-9]+).html?$ /catalog.phtml?id=$1 [L]
============================================
И вот что самое загадочное - второе правило срабатывает, а первое - нет !
Скрипты forum.phtml и catalog.phtml имеют одинаковое содержание:
Но только catalog.phtml выдает на экран значение $_GET['id']
В чем может быть дело?
-~{}~ 20.03.07 18:02:
Нда... Загадок все больше и больше....
Выключил в .htaccess:
RewriteEngine off
Теперь по запросу:
www.contora.ru/catalog/233.html
Апач генерит ошибку об отсутствии страницы, а по запросу:
www.contora.ru/forum/1233.html
продолжает выполнять скрипт catalog.phtml, но как и раньше - без необходимого преобразования !
Что за мистика ?!
-~{}~ 20.03.07 18:32:
Чертовщина какая-то !
Какая настройка в Апаче может заставляеть его выполнять скрипты без разрешения?
Объясню: RewriteEngine off, в каталоге сайта лежит файл со скриптом, называется, допустим, sex.phtml
Когда в браузер вводишь:
http://www.contora.ru/sex/
то Апач вместо того, что бы сказать, что такого ничего нет - он выполняет скрипт http://www.contora.ru/sex.phtml !!!
-~{}~ 20.03.07 18:54:
Странно. Переписал так:
==========================================
RewriteRule ^phorum/([0-9]+).html?$ /forum.phtml?id=$1 [L]
==========================================
и конструкция заработала как надо.
В чем-же был прикол?
Столкнулся с чем-то необъяснимо-загадочным. Имеется апач, пхп и mod_rewrite.
Правила для mod_rewrite прописаны в .htaccess таким образом:
============================================
RewriteRule ^forum/([0-9]+).html?$ /forum.phtml?id=$1 [L]
RewriteRule ^catalog/([0-9]+).html?$ /catalog.phtml?id=$1 [L]
============================================
И вот что самое загадочное - второе правило срабатывает, а первое - нет !
Скрипты forum.phtml и catalog.phtml имеют одинаковое содержание:
PHP:
echo $_GET['id'];
echo $_SERVER['REQUEST_URI'];
echo $_SERVER['REQUEST_METHOD'];
echo $_SERVER['QUERY_STRING'];
exit;
В чем может быть дело?
-~{}~ 20.03.07 18:02:
Нда... Загадок все больше и больше....
Выключил в .htaccess:
RewriteEngine off
Теперь по запросу:
www.contora.ru/catalog/233.html
Апач генерит ошибку об отсутствии страницы, а по запросу:
www.contora.ru/forum/1233.html
продолжает выполнять скрипт catalog.phtml, но как и раньше - без необходимого преобразования !
Что за мистика ?!
-~{}~ 20.03.07 18:32:
Чертовщина какая-то !
Какая настройка в Апаче может заставляеть его выполнять скрипты без разрешения?
Объясню: RewriteEngine off, в каталоге сайта лежит файл со скриптом, называется, допустим, sex.phtml
Когда в браузер вводишь:
http://www.contora.ru/sex/
то Апач вместо того, что бы сказать, что такого ничего нет - он выполняет скрипт http://www.contora.ru/sex.phtml !!!
-~{}~ 20.03.07 18:54:
Странно. Переписал так:
==========================================
RewriteRule ^phorum/([0-9]+).html?$ /forum.phtml?id=$1 [L]
==========================================
и конструкция заработала как надо.
В чем-же был прикол?