|
|
|
| Всем доброго дня! Имею следующую заморочку:
# Правило 1-------------------------------------------------------------------------------
Есть ссылка типа
modules.php?name=Shopping_Cart
|
в .htaccess
RewriteRule ^Shopping_Cart modules.php?name=Shopping_Cart [NC,L,NE]
|
# Правило 2-------------------------------------------------------------------------------
есть ссылка типа
modules.php?name=Shopping_Cart&file=cart
|
в .htaccess
RewriteRule ^Shopping_Cart/file/(.*) modules.php?name=Shopping_Cart&file=$1 [NC,L,NE]
|
# Правило 3-------------------------------------------------------------------------------
есть ссылка типа
modules.php?name=Shopping_Cart&file=cart&c_op=showCart
|
в .htaccess
RewriteRule ^Shopping_Cart/file/(.*)_(.*) modules.php?name=Shopping_Cart&file=$1&c_op=$2 [NC,L,NE]
|
Порядок файле подстановки обратный (3,2,1)
Итак, 3-е правило не срабатывает вообще никогда, 2-е срабатывает но не на все файлы | |
|
|
|
|
|
|
|
для: platonische
(20.08.2007 в 16:02)
| | При переходе по ссылке попадающей под правило 3 в браузере появляется следующий урл
Shopping_Cart/file/modules.php?name=Shopping_Cart&file=cart&c_op=showCart
|
| |
|
|
|
|
|
|
|
для: platonische
(20.08.2007 в 16:16)
| | Все народ запутался аж п****ц.....
Теперь уже объясните, а то голова взорвется!
строки в .htaccess от вечают только за перекидку с псевдо url на реальный и все? правильно я понимаю? т.е. строка
RewriteRule ^Shopping_Cart/file/([a-z]+)/([a-zA-Z_]+)\.html$ modules.php?name=Shopping_Cart&file=$1&c_op=$2 [NC,L,NE]
|
при надоре в браузере
http://site.ru/Shopping_Cart/file/cart/showCart.html
| должно мне показывать то, что находится на самом деле по url
http://site.ru/modules.php?name=Shopping_Cart&file=cart&c_op=showCart
|
Правильно??? | |
|
|
|
|
|
|
|
для: platonische
(20.08.2007 в 16:02)
| | Ну где вы ГУРУ, помогите победить ВУДУ | |
|
|
|
|
|
|
|
для: platonische
(20.08.2007 в 16:02)
| | Смотри сделал уже ТУПЕЕ НЕКУДА в лоб!
RewriteRule ^Shopping_Cart/file/cart/showCart.html$ modules.php?name=Shopping_Cart&file=cart&c_op=showCart [NC,L,NE]
RewriteRule ^Shopping_Cart/file/cart/addToCart.html$ modules.php?name=Shopping_Cart&file=cart&c_op=addToCart [NC,L,NE]
RewriteRule ^Shopping_Cart/file/cart/editCart.html$ modules.php?name=Shopping_Cart&file=cart&c_op=editCart [NC,L,NE]
RewriteRule ^Shopping_Cart/file/cart/emptyCart.html$ modules.php?name=Shopping_Cart&file=cart&c_op=emptyCart [NC,L,NE]
Грубо заходим мы в каталог выбрали продукт нажимает на кнопку заказ ->Вызывается функция addToCart (она срабатывает) в конце этой функии стоит переход
header("Location: modules.php?name=Shopping_Cart&file=cart&c_op=showCart");
и вот именно это и выплевывает мне:
site.ru/Shopping_Cart/file/cart/modules.php?name=Shopping_Cart&file=cart&c_op=showCart
Как вот это победить?
Т.е. путь для перехода относительный (header("Location: modules.php?name=Shopping_Cart&file=cart&c_op=showCart");) и поетому вперед дописывается /Shopping_Cart/file/cart/, так выходит?
Есть вариант нафиг избавиться от псевдо каталогов и будет переть (должно по крайней)! Но хотелось бы полностью реализовать задуманное.
P.S.: сделал без псевдо каталогов, проблема осталась. При вызове addToCart выходит ссылка
site.ru/modules.php?name=Shopping_Cart&file=cart&c_op=showCart (т.е. ссылка рабочая и РЕАЛЬНАЯ, но по rewriteRule почемуто не проходит!?) | |
|
|
|