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

Форум Apache

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

 

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

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

тема: htaccess
 
 автор: dima4321   (29.01.2011 в 00:23)   письмо автору
 
 

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]

Все остальное не получает переменную.


что можно придумать ??

Т.е. история такова что первое правило глушит все остальные.
стоит стереть первое правило и корректно работает второе.
стоить стереть первое и второе корректно работает третье.
стоит стереть первое второе третье --- корректно работает четвертое.

В чем проблема как переиграть ??

  Ответить  
 
 автор: dima4321   (29.01.2011 в 10:13)   письмо автору
 
   для: dima4321   (29.01.2011 в 00:23)
 

Вот переделал

Код:
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/

  Ответить  
Rambler's Top100
вверх

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