Я работаю над корзиной покупок, используя PHP на Apache-сервере.Короче говоря, это работает так: PHP ID сессии используется как идентификатор корзины для торговой сессии.После завершения покупки идентификатор сеанса очищается и создается новый.
Это работает, как и ожидалось, при использовании этого типа URL:
www.xyz.com/category.php?catid=11
Теперь что-то странное происходит, когда яактивировать SEO-URL с помощью мода Rewrite
www.xyz.com/c/jeans/women
and
RewriteRule ^c/(.*) /category.php?catid=$1 [QSA]
При использовании этого метода фактический session_id () переключается между 3-4 различными идентификаторами сеанса при навигации по сайту ..
Первая мысльбыла какая-то проблема с кэшированием или что-то подобное, но потом я узнал это:
www.xyz.com/categories/jeans/women
and
RewriteRule ^categories/(.*) /category.php?catid=$1 [QSA]
Это работает, как и ожидалось!При использовании «категорий» вместо «с» в качестве идентификатора это работает!
Что мне здесь не хватает?Мой синтаксис переписывания неверен?Почему ^ c явно влияет на обработку PHP-сессии, а категории ^ - нет?