regex - test - regular expressions
¿Cómo puedo escapar del signo de barra `/` en Apache `<If>` regex de la directiva? (2)
Quería servir archivos .xhtml como
-
application/xhtml+xml
si el navegador dice que lo acepta. -
text/html
contrario
Intenté hacerlo con mod_rewrite
pero no funcionó con Options -FollowSymLinks
(ver ¿Por qué lo hago? Obtengo 403 Forbidden cuando veo archivos afectados por Apache RewriteRule si tengo `Options -FollowSymLinks`? ).
Entonces, lo intenté
<Files "*.xhtml">
<If "%{HTTP:Accept} !~ /application//xhtml/+xml/">
ForceType text/html
</If>
</Files>
Pero obtengo un error de sintaxis: no se pudo compilar la expresión regular .
Mientras tanto, uso este código ...
<Files "*.xhtml">
<If "%{HTTP:Accept} !~ /xhtml/+xml/">
ForceType text/html
</If>
</Files>
... que funciona, pero quiero hacer coincidir el tipo MIME correcto.
Puede usar un código de escape como /x2F
lugar de /
.
Parece que mejorar esto todavía está en construcción a partir de Apache 2.4. El miembro del equipo de Apache "covener" recomienda m#regexp#
lugar.
Entonces su código se vería así ...
<If "%{HTTP:Accept} !~ m#application/xhtml/+xml#">