RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ about.php?band=$1 [L,QSA]
RewriteRule ^history/(.*)$ abouthistory.php?band=$1 [L,QSA]
RewriteRule ^artikles/(.*)$ artikles.php?band=$1 [L,QSA]
RewriteRule ^genre/(.*)$ aboutgenre.php?genre=$1 [L,QSA]
Оказывается корректно работает только
RewriteRule ^(.*)$ about.php?band=$1 [L,QSA]
Все остальное не получает переменную.
что можно придумать ??
Т.е. история такова что первое правило глушит все остальные.
стоит стереть первое правило и корректно работает второе.
стоить стереть первое и второе корректно работает третье.
стоит стереть первое второе третье --- корректно работает четвертое.
В чем проблема как переиграть ??
Спустя 3 часа, 25 минут, 8 секунд (29.01.2011 - 03:45) waldicom написал(а):
Разве L не означает, что это последнее правило?
Спустя 8 часов, 44 минуты, 3 секунды (29.01.2011 - 12:29) dima4321 написал(а):
Сделал по-другому...но ((
Код:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^cd/(.*)$ about.php?band=$1 [L]
RewriteRule ^history/(.*)$ abouthistory.php?band=$1 [L]
RewriteRule ^genre/(.*)$ aboutgenre.php?genre=$1 [L]
В итоге с главной страницы я могу корректно перейти по всем трем ссылкам такого вида.Т.е. скрипт передает другим скриптам все четко.
<td><a href='cd/$row[1]'>$row[1]</a></td>
<td><a href='genre/$row[2]'>$row[2]</a></td>
<td><a href='history/$row[1]'>About $row[1]</a></td>";
Но далее на тех же скриптам у меня стоит перелинковка между всем тремя скриптами.
и в итоге в адресной строке я могу получить вот это
уходя с этого урла
2/cd/BRAVO
на этот
2/history/BRAVO
в итоге попадаю на 2/cd/history/BRAVO
или при выборе жанра я стою на корректной слыыке 2/history/abba и должен бы перейти
на
2/genre/POP
в итоге имею
2/cd/genre/POP
почему так. Надо для тех скриптов тоже придумывать обработчик или что..??
вообще можно получать некорректные чумовые улры
типа такого
/cd/genre/history/history/
Код:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^cd/(.*)$ about.php?band=$1 [L]
RewriteRule ^history/(.*)$ abouthistory.php?band=$1 [L]
RewriteRule ^genre/(.*)$ aboutgenre.php?genre=$1 [L]
В итоге с главной страницы я могу корректно перейти по всем трем ссылкам такого вида.Т.е. скрипт передает другим скриптам все четко.
<td><a href='cd/$row[1]'>$row[1]</a></td>
<td><a href='genre/$row[2]'>$row[2]</a></td>
<td><a href='history/$row[1]'>About $row[1]</a></td>";
Но далее на тех же скриптам у меня стоит перелинковка между всем тремя скриптами.
и в итоге в адресной строке я могу получить вот это
уходя с этого урла
2/cd/BRAVO
на этот
2/history/BRAVO
в итоге попадаю на 2/cd/history/BRAVO
или при выборе жанра я стою на корректной слыыке 2/history/abba и должен бы перейти
на
2/genre/POP
в итоге имею
2/cd/genre/POP
почему так. Надо для тех скриптов тоже придумывать обработчик или что..??
вообще можно получать некорректные чумовые улры
типа такого
/cd/genre/history/history/
_____________
Работаю за еду ! __))
И за плюсики !