trigonometrica sacar resueltos numeros numero forma ejercicios complejos complejo como calculadora argumentos argumento apache codeigniter mod-rewrite

apache - sacar - ¿Qué hace el argumento de $ 1 en este RewriteCond?



modulo y argumento de un numero complejo ejercicios resueltos (2)

Estoy configurando las reglas de reescritura de Apache para ordenar mis URL de CodeIgniter.

Esta pregunta (y muchas publicaciones en el foro, etc., que he encontrado en el lugar) documenta el uso de la siguiente regla (o algo muy similar):

RewriteEngine on RewriteCond $1 !^(index/.php|phpinfo/.php|images|robots/.txt|sitemap/.xml/.gz|sitemap/.xml|assets) RewriteRule ^(.*)$ /index.php/$1 [L]

Sé que $ 1 después de RewriteRule se refiere a la cadena capturada de (. *), Pero ¿qué representan los primeros $ 1 (inmediatamente después de RewriteCond)? Muchos ejemplos que he visto usan algo como% {REQUEST_URI} como el primer argumento para RewriteCond.


$ 1 representa la coincidencia del primer conjunto de paréntesis en la expresión regular que lo sigue. ($ 2 coincidirían con el segundo conjunto de paréntesis, si se da)

Por ejemplo, la expresión regular coincide con cualquier cosa que NO sea "index.php" o "phpinfo.php", etc. Entonces, la condición de reescritura se pasa si la url solicitada no es una de esas, y la sección coincidente se pasa a la reescripción


El $1 es básicamente el contenido capturado de todo, desde el inicio y el final de la cadena. En otras palabras, $1 = (.*) .

En su reescritura, el ^ significa el inicio de la cadena, el (.*) Dice que coincide con cualquier cosa, y el $ indica el final de la cadena. Entonces, básicamente, es decir, agarrar todo desde el principio hasta el final de la cadena y asignar ese valor a $ 1.

Así que si www.example.com/tacos-are-good , entonces $1 = "tacos-are-good" . Por lo tanto, su reescritura final será realmente www.example.com/index.php/tacos-are-good .

Aquí hay una hoja de trucos para ModRewrite que puede ser de ayuda: http://www.addedbytes.com/cheat-sheets/mod_rewrite-cheat-sheet/