/ / Les règles de réécriture d'Apache sans que les séquences de barres obliques inverses Perl ne fonctionnent - regex, perl, apache, .htaccess, mod-rewrite

Les règles de réécriture d'Apache avec des séquences de barre oblique inverse Perl ne fonctionnent pas - regex, perl, apache, .htaccess, mod-rewrite

J'ai une règle de réécriture assez simple qui fonctionne sur Nginx:

rewrite (*UTF8)^/([pLpN/-]*)$ /index.php?route=$1;

Il utilise des séquences de barres obliques inverses Perl pour faire correspondre toutes les lettres et tous les chiffres Unicode.

J'ai essayé de le reproduire sur Apache:

RewriteRule ^([pLpN/-]*)$ /index.php?route=$1 [QSA,L]

Cependant, il ne correspond qu'à des barres obliques et des tirets. Le journal des erreurs est propre.

Réponses:

3 pour la réponse № 1

mod_rewrite ne supporte pas p propriétés, mais vous pouvez utiliser w avec B et NE drapeau qui vous enverra l’URI réécrite sans échapper à /index.php:

RewriteRule ^([w/-]+)$ /index.php?route=$1 [QSA,L,B,NE]

PS: w comprend également un trait de soulignement.