[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: RewriteRule и ноли в адресе
te0203
В файле .htaccess есть набор правил

RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАП|снап|SNAP|snap)(-|_)?(500)(.)?(php|htm|html)?$ /page-tov.php?id=111218001 [L]
RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАП|снап|SNAP|snap)(-|_)?(1000)(.)?(php|htm|html)?$ /page-tov.php?id=111218002 [L]
RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАП|снап|SNAP|snap)(-|_)?(1500)(.)?(php|htm|html)?$ /page-tov.php?id=111218003 [L]
RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАП|снап|SNAP|snap)(-|_)?(2000)(.)?(php|htm|html)?$ /page-tov.php?id=111218004 [L]
RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАП|снап|SNAP|snap)(-|_)?(3000)(.)?(php|htm|html)?$ /page-tov.php?id=111218005 [L]
RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАП|снап|SNAP|snap)(-|_)?(5000)(.)?(php|htm|html)?$ /page-tov.php?id=111218006 [L]
RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАП|снап|SNAP|snap)(-|_)?(7000)(.)?(php|htm|html)?$ /page-tov.php?id=111218007 [L]
RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАП|снап|SNAP|snap)(-|_)?(10000)(.)?(php|htm|html)?$ /page-tov.php?id=111218008 [L]
RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАШ|снаш|SNASH|snash)(-|_)?(15000)(.)?(php|htm|html)?$ /page-tov.php?id=111218009 [L]
RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАШ|снаш|SNASH|snash)(-|_)?(20000)(.)?(php|htm|html)?$ /page-tov.php?id=111218010 [L]
RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАШ|снаш|SNASH|snash)(-|_)?(30000)(.)?(php|htm|html)?$ /page-tov.php?id=111218011 [L]

Так вот.
При запросе
/Стабилизаторы_напряжения/СНАП-5000
перебрасыват на страницу
/Стабилизаторы_напряжения/СНАП-500
тоесть последний ноль в строке запроса присуцтвует а сервер его не видит.
Если переместить правило с большим количеством ноле выше правила с меньшим количеством нолей всё работает правильно.

RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАП|снап|SNAP|snap)(-|_)?(5000)(.)?(php|htm|html)?$ /page-tov.php?id=111218006 [L]
RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАП|снап|SNAP|snap)(-|_)?(500)(.)?(php|htm|html)?$ /page-tov.php?id=111218001 [L]

Так же если в конце строки запроса поставить
/Стабилизаторы_напряжения/СНАП-5000.php
то тоже всё работает.

killer8080
замени (.)? на \,
Цитата (te0203 @ 14.03.2013 - 14:14)
RewriteRule ^(С|с)(табилизаторы)(_|-)(Н|н)(апряжения)/(СНАП|снап|SNAP|snap)(-|_)?(500)(.)?(php|htm|html)?$ /page-tov.php?id=111218001 [L]


хотя вообще решение странное, это что каждый раз добавляя/удаляя товар нужно править .htaccess? user posted image
te0203
Спасибо. Помогло.

Может подскажешь как сделать замену адреса без .htaccess? Я не код прошу а идею.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.