Por Abhishek Ghosh 14 de enero de 2024 9:29 am Actualizado el 14 de enero de 2024AnuncioUn motor de reescritura permite reescribir solicitudes dirigidas a un servidor web internamente o reenviarlas externamente. Para el servidor web Apache, el módulo de software mod_rewrite hace este trabajo. Otros servidores web como Microsoft IIS, Nginx, Lighttpd o Hiawatha ofrecen funciones similares. Esta funcionalidad fue creada para poder proporcionar un esquema de direccionamiento al mundo exterior independiente de factores internos, de modo que, por ejemplo, Incluso si se cambia la jerarquía de archivos, las URL siguen siendo válidas. Esto también se conoce como enlaces permanentes. Los motores de reescritura permiten que la redirección de direcciones dependa de condiciones adicionales además de la URL solicitada, como la URL de referencia, el identificador de agente de usuario o la dirección IP del cliente solicitante. De este modo se puede realizar, por ejemplo, un reenvío o un encubrimiento. Aplicación de muestra de motor de reescritura Los motores de reescritura se utilizan a menudo para hacer que los recursos sean accesibles con URL dinámicas en direcciones alternativas. También se puede acceder al recurso con la dirección técnica interna, por ejemplo, en la siguiente dirección: Al mundo exterior, en lugar de direcciones dinámicas y parametrizadas. , se utilizan direcciones aparentemente estáticas. Esto es útil porque las direcciones breves y que se explican por sí mismas generalmente se consideran más legibles, más fáciles de recordar y, en general, más confiables. Esto también se conoce como URL limpias. La implementación del caso de uso que se muestra varía según el software de servidor web utilizado y el contexto. Normalmente, se utilizan expresiones regulares para definir un patrón de búsqueda que se aplica a un patrón de destino deseado. El patrón de búsqueda es la dirección estática aparente. El patrón objetivo es el recurso interno o físico. Los rangos dinámicos, como el ID de un artículo del patrón de búsqueda, generalmente se transfieren al patrón de destino con la ayuda de variables. A continuación se muestran algunos ejemplos de la implementación concreta para el módulo Apache mod_rewrite, el servidor web nginx y el servidor web Lighttpd.Apache/mod_rewrite RewriteEngine en RewriteRule ^/blog/(.*)$ /w/index.php?title=$1RewriteEngine enRewriteRule ^/blog/(.*)$ /w/index.php?title=$1 ubicación de nginx /blog { reescribir ^/blog/(.*)$ /index.php?title=$1; }ubicación /blog { reescribir ^/blog/(.*)$ /index.php?title=$1;}Lighttpd url.rewrite-once = ( «^/blog/(.*)$» => «/index. php?title=$1» )url.rewrite-once = ( «^/blog/(.*)$» => «/index.php?title=$1»)

Source link