performance - rewritecond - ¿Algún impacto negativo al usar Mod-Rewrite?
rewriterule htaccess (3)
Para hacer eco de lo que dice Ryan arriba, las reglas en .htaccess
realmente pueden dañar los tiempos de carga en un sitio ocupado en comparación con tener las reglas en su archivo de configuración. Inicialmente probamos esto (~ 60 millones de páginas / mes) pero no duró mucho tiempo hasta que nuestros servidores comenzaron a fumar :)
La desventaja obvia de tener las reglas en tu configuración es que tienes que volver a cargar la configuración cada vez que modifiques tus reglas.
El último indicador ("L") es útil para acelerar la ejecución de sus reglas, una vez que las reglas a las que se accede con mayor frecuencia están hacia la parte superior y se evalúan primero. Puede hacer que el mantenimiento sea mucho más complicado si tienes un conjunto largo de reglas: una mañana desperdicié un par de horas muy frustrantes mientras editaba a mitad de mi lista de reglas y tenía una arriba que estaba atrapando más de ¡destinado a!
Tuvimos dificultades para encontrar puntos de referencia relevantes también, y terminamos resolviendo nuestro propio conjunto interno de pruebas. Una vez que obtuvimos nuestras reglas resueltas, correctamente ordenadas y en nuestro conf Apache, no encontramos mucho impacto negativo en el rendimiento.
Sé que hay muchas cosas positivas que mod-rewrite logra. Pero hay algo negativo? Obviamente si tienes reglas mal escritas vas a tener problemas. Pero, ¿qué pasa si tienes un sitio de alto volumen y estás constantemente usando mod-rewrite, va a tener un impacto significativo en el rendimiento? Hice una búsqueda rápida de algunos puntos de referencia en Google y no encontré mucho.
Si le preocupa el rendimiento de Apache, una cosa a considerar si tiene muchas reglas de reescritura es utilizar el indicador "omitir". Es una forma de saltarse la coincidencia en las reglas. Por lo tanto, cualquier gasto adicional que se haya gastado en la coincidencia se guarda.
Sin embargo, ten cuidado, estaba en un proyecto que utilizaba mucho la marca "omitir", y hacía que el mantenimiento fuera doloroso, ya que depende del orden en que las cosas están escritas en el archivo.
Utilicé mod_rewrite en sitios que obtienen millones / hits / mes sin ningún problema de rendimiento significativo. Debes saber qué reescrituras se aplican primero según tus reglas.
Usar mod_rewrite probablemente sea más rápido que analizar la URL con tu idioma actual.
Si realmente te preocupa el rendimiento, no uses archivos .htaccess
, estos son lentos. Coloque todas las reglas de reescritura en su configuración de Apache, que solo se lee una vez al inicio. .htaccess
archivos .htaccess
se vuelven a analizar en cada solicitud, junto con cada archivo .htaccess
en las carpetas principales.