Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Rozbudowany mod_rewrite, jakaś rada?
soomal
post
Post #1





Grupa: Zarejestrowani
Postów: 38
Pomógł: 1
Dołączył: 4.03.2007

Ostrzeżenie: (0%)
-----


Piszę moduł do przyjaznych linków w oscommerce2 i zabija mnie ilość reguł rewrite w .htaccess, przez chaos w linkach na stronie (raz przekazywana nazwa kategorii, innym razem nie) muszę uwzglęniać każdą opcję.
Nie posiadam dużej wiedzy o regexp, więc jeśli te reguły można jakoś zoptymalizować to proszę o radę.
Np. taka nazwa produktu w pierwszej linii (.*?). Czy można zrobić w tym jakiegoś ifa (jeśli jest to przekaż nazwę do ?_cname_, a jak nie ma to olej).
Załączam fragment reguł. Aktualnie, żeby to dało się jakoś ogarnąć piszę sobię automat, którym mógłbym ogarnąć każdą permutację tych wartości, ale pytam czy nie ma prostszej drogi.
Fragment .htaccess:
  1. <?php
  2. RewriteRule ^kategoria/([0-9_]+)/produkt/([0-9_]+)/(.*?)/strona/([0-9]+)/na_strone/([0-9]+)$
  3. index.php?cPath=$1&products_id=$2&_pname_=$3&page=$4&prds_per_site=$5
  4. RewriteRule ^kategoria/([0-9]+)/produkt/([0-9_]+)/(.*?)/strona/([0-9]+)$
  5. index.php?cPath=$1&_pname_=$2&page=$3&_pname_=$4
  6. RewriteRule ^kategoria/([0-9_]+)/produkt/([0-9_]+)/(.*?)/na_strone/([0-9]+)?$
  7. index.php?cPath=$1&_pname_=$2&prds_per_site=$3
  8. RewriteRule ^kategoria/([0-9]+)/produkt/([0-9]+)/(.*)/typ/([0-9]+)/dodaj_do_koszyka$
  9. index.php?cPath=$1&products_id=$2&_pname_=$3&product_type=$4&action=buy_now
  10. RewriteRule ^kategoria/([0-9]+)/produkt/([0-9]+)/typ/([0-9]+)/dodaj_do_koszyka$
  11. index.php?cPath=$1&products_id=$2&product_type=$3&action=buy_now
  12. RewriteRule ^kategoria/([0-9]+)/produkt/([0-9]+)/(.*)/typ/([0-9]+)$
  13. index.php?cPath=$1&products_id=$2&_pname_=$3&product_type=$4
  14. RewriteRule ^kategoria/([0-9]+)/produkt/([0-9]+)/typ/([0-9]+)$
  15. index.php?cPath=$1&products_id=$2&product_type=$3
  16. RewriteRule ^kategoria/([0-9]+)/produkt/([0-9]+)/(.*)/kup$
  17. product_info.php?cPath=$1&products_id=$2&_pname_=$3&action=buy_now
  18. RewriteRule ^kategoria/([0-9]+)/produkt/([0-9]+)/(.*)$
  19. index.php?cPath=$1&products_id=$2&_pname_=$3
  20. RewriteRule ^kategoria/([0-9]+)/produkt/([0-9_]+)$
  21. index.php?cPath=$1&products_id=$2
  22. ?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 12:19