2011-10-04 21 views
7

¿Cuál es la forma más RÁPIDA de redirigir una página específica (específica), PHP o htaccess? Teniendo en cuenta que muchas páginas diferentes pueden necesitar dicha redirección en un sitio con mucho tráfico. p.ej. lo que es más rápido:Redirigir más rápido, PHP o htaccess?

PHP (no hay consultas de base involucradas, sólo simple sin formato php redirección)

header("Location: /new.php",TRUE,301); 

o

.htaccess

redirect 301 old.php http://site.com/new.php 

Respuesta

6

Depende. En general, .htaccess será más rápido porque no tendrá la sobrecarga de invocar PHP. Sin embargo, si tiene 1000 redireccionamientos en un único archivo .htaccess en el nivel raíz del documento, Apache deberá verificar cada uno de ellos en cada carga de página. Es decir, en lugar de solo servir index.php, ahora tendrá que hacer 1000 controles regex, y y luego atender a index.php. En general, diría que si tiene un montón de redirecciones y muchas páginas que no serán redireccionadas, hágalo en PHP. En este caso, no paga ninguna sobrecarga adicional por las páginas que no necesitan ser redireccionadas.

7

Htacess se procesan antes de php se llama, entonces si puede crearlo, seguramente será más rápido

+2

Sin embargo. .htaccess sí mismo se carga/analiza para cada golpe, así que quizás PHP puede ser más rápido en algunas circunstancias (.htaccess muy complejo para uno), particularmente con cachés en lugar. –

+1

si hay un .htaccess complejo, se analizará de todos modos y se agregará al tiempo para procesar el PHP, por lo que no hay ganancia allí – Einacio

2

Si se usa htaccess en absoluto, Apache lo procesará antes de que comience cualquier procesamiento de PHP. No he hecho los puntos de referencia sobre el uso de uno u otro, pero cuando ambos están presentes, htaccess siempre será más rápido.

También tenga en cuenta que la redirección de htaccess se puede escribir utilizando expresiones regulares para aplicar a varios archivos antiguos, por lo que hay menos trabajo en su parte final.

+0

htaccess siempre será más rápido ... sí, pero solo para las páginas que tenían una interés en pasar por el proceso; si el 99% de sus páginas no son redireccionadas, pero tiene 1 000 líneas en su .htaccess: entonces el análisis del .htaccess para CADA solicitud se ralentiza más que el 1% de las páginas que se benefician de no pasar por php para ser redirigidas – spiritoo

Cuestiones relacionadas