Directiva RewriteMap definește o funcție externă sau un tabel de corespondență cheie-valoare pe care RewriteRule o poate interoga pentru a rescrie sau redirecționa URL-uri. Este soluția de înaltă performanță atunci când aveți mii sau zeci de mii de redirecționări 301 (migrări de magazine online), eliminând încetinirea cauzată de reguli repetitive individuale.
# Configurare la nivel de server sau VirtualHost
RewriteEngine On
RewriteMap map_produse "txt:/etc/apache2/produse_redirectionate.txt"
# Rescriere folosind valoarea extrasă din fișierul text
RewriteCond %{REQUEST_URI} ^/produs/(.*)$
RewriteCond ${map_produse:%1} !=""
RewriteRule ^/produs/(.*)$ ${map_produse:%1} [R=301,L]
# Fișierul produse_redirectionate.txt conține perechi:
# laptop-vechi /produse/laptop-nou-2026/
# telefon-x /produse/smartphone-generatie-noua/
Tipuri de Hărți Suportate: Fișiere text simple (txt:), baze de date binare indexate de mare viteză (dbm:), programe externe de scriptare (prg:) sau generatoare interne (int:tolower).
Avantaje
- Fișierele
dbmpermit interogări O(1) de ordinul microsecundelor pentru peste 100.000 de URL-uri. - Modificarea fișierului de mapare nu necesită repornirea serverului Apache.
Întrebări & Exemple de Cod:
Tabele Externe de Mapare URL cu RewriteMap (mod_rewrite)Ai o nelămurire despre utilizarea comenzii
Tabele Externe de Mapare URL cu RewriteMap (mod_rewrite)sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.