Jump to content

Redirección Muy lenta


sergio_bolo

Recommended Posts

Bueno días. No encuentro la razón por la cual mi web tarda en cargar alrededor de 8 segundos (otras veces 1,3s , otras veces 30 segundos, otras veces 5 segundos... ) Lo que me he fijado es que gran parte del tiempo de carga podría reducirse si la web no tuviera que redireccionar de miweb.es a miweb.es/es/. Me interesa tener la página en distintos idiomas pero no se porque el proceso de redirección hace que tarde hasta 6 segundos (en el mejor de los casos).

 

Veo penoso que 400 kb tarden esa barbaridad en cargar¡¡¡¡

 

La página está alojada en www.lamarciana.es

 

Un saludo cordial. Espero que puedan ayudarme¡ Gracias.

Link to comment
Share on other sites

Creo que aquí te puedo ayudar yo, puesto que me voy a volver un "experto" en problemas de carga.

 

Esa redirección la puedes quitar si quietas los idiomas de tu página, es decir, le dejas solo el español. Para ello entra en Localización/Idiomas y desactiva todos menos el español. Eso si, te quedas sin poder traducir la página al ingles...

 

Un saludo

Link to comment
Share on other sites

Hola

 

Ojo con quitar los idiomas.

 

Hay un problema al hacer eso: te cambian todas las url

Me explico: ahora mismo tu página principal es

www.lamarciana.es/es

y la dirección de una página escogida al azar entre las tuyas es

www.lamarciana.es/es/content/4-faqs

Si quitas los idiomas pasarán a ser respectivamente

www.lamarciana.es

y

www.lamarciana.es/content/4-faqs

Parece una tontería de nada ¿verdad?

Pero resulta que par los buscadores eso es un cambio radical. Así que si tienes la tienda en funcionamiento ya consolidado, las consecuencias pueden ser importantes ya que los buscadores encontrarán error 404 donde antes tenían una página indexada.

Yo eliminé los idiomas y tuve (y sigo teniendo) mis quebraderos de cabeza.

La manera de solucionar el problema fue introduciendo código en .htaccess para redireccionar todas las páginas habían desaparecido.

En este post podrás encontrar como lo hice (gracias a la ayuda del foro)

http://www.prestashop.com/forums/topic/260662-redireccionamiento-301-solucionado/

El problema que me persiste (y que aún no he podido resolver) es que Prestashop reescribe el .htaccess en muchas ocasiones (al añadir un producto, al activar y desactivar la cache y no se en cuantas ocasiones más) y tengo que estar pendiente de si lo tengo que volver a subir.

Es un rollo. Aún así te diré que no me he arrepentido de haber quitado los idiomas, pero sólo porque la tienda está aún en sus inicios.

Para una tienda en construcción creo que es aconsejable quitar los idiomas si no se piensan usar (o se usarán en un futuro lejano, y, en tal caso, añadir los idiomas con subdominios)

Para una tienda ya consolidada jamás lo aconsejaría.

Respecto a los efectos que pueda tener sobre la velocidad de carga no opino porque no tengo conocimientos. Sólo decir que yo no he notado cambios, pero tampoco he realizado mediciones.

 

Saludos

Link to comment
Share on other sites

Hola.

 

Uno de los problemas que tienes es que en el servidor no tienes activo el Keep Alive.

 

Para desgargar el index de tu tienda el navegador tiene que hacer 43 peticiones, al no tener el keep alive cada uno de esos 43 archivos que se tiene que bajar lo hace sin reutilizar la conexión inicial.

 

Es decir, navegador se conecta al servidor, se baja el primer archivo, por ejemplo el logo de la tienda, una vez se lo ha bajado el servidor CIERRA la conexión y tu navegador tiene que volver a abrir otra conexión TCP nueva contra el servidor, así 43 veces.

 

Un saludo.

  • Like 1
Link to comment
Share on other sites

Muchas gracias por la ayuda¡ (Oka) Mil gracias por la explicación. Desconocía la parte técnica del problema. Ahora solo me queda Investigar sobre lo que me comentas y hablar con mi hosting. :))))))

(Deshilachado) En cuanto a la reescritura del .htaccess, prestahop solo sobreescribe lo que se encuentra entre "start" y "end". Si añades código, encima o debajo, lo mantendrá cuando lo reescriba. (Por lo menos así lo leí, y lo puse en practica. Doy fe de ello)

  • Like 1
Link to comment
Share on other sites

Oka, he esatado mirando las especificaciones de mi servidor y si que está activo keep alive¡ :(((( Seguiré probando hasta que lo solucione. Por ahora he añadido algo de codigo en el .htaccess pero sigue lento en la redirección, no en el resto de procesos. El 60% del tiempo de carga se destina a redireccionar la web de .es a .es/es. (Y no puedo anular los idioma. No tendría ningún sentido ponerle un parche al problema.)

 

Seguiremos buscando. Muchas gracias de nuevo.

Link to comment
Share on other sites

 

(Deshilachado) En cuanto a la reescritura del .htaccess, prestahop solo sobreescribe lo que se encuentra entre "start" y "end". Si añades código, encima o debajo, lo mantendrá cuando lo reescriba. (Por lo menos así lo leí, y lo puse en practica. Doy fe de ello)

Desgraciadamente en mi caso no es así y la tienda me machaca sin piedad el código del .htaccess lo ponga donde lo ponga. Sic

 

Gracias por tu comentario

Link to comment
Share on other sites

Oka, he esatado mirando las especificaciones de mi servidor y si que está activo keep alive¡ :(((( Seguiré probando hasta que lo solucione. Por ahora he añadido algo de codigo en el .htaccess pero sigue lento en la redirección, no en el resto de procesos. El 60% del tiempo de carga se destina a redireccionar la web de .es a .es/es. (Y no puedo anular los idioma. No tendría ningún sentido ponerle un parche al problema.)

 

Seguiremos buscando. Muchas gracias de nuevo.

 

A mí me aparece que NO tienes activo el keep alive :

wget -S www.lamarciana.es/es
--2013-09-02 17:41:12--  http://www.lamarciana.es/es
Resolviendo www.lamarciana.es (www.lamarciana.es)... 217.76.150.42
Conectando con www.lamarciana.es (www.lamarciana.es)[217.76.150.42]:80... conectado.
Petición HTTP enviada, esperando respuesta... 
..
  Connection: close

Si te fijas en connection pone close donde debería poner Connection: keep-alive

 

En el reporte de gtmetrix puedes verlo mejor:

 

http://gtmetrix.com/reports/www.lamarciana.es/1lntqSad

 

Un saludo

Link to comment
Share on other sites

Gracias OKA... Alguna idea par solucionarlo? En www.lamarciana.es/info.php puedo ver que al final de todo me pone que esta activa el tipo de conexion Keep-alive (la cual no sabía ni lo que era, por lo que te doy las gracias por enseñarme tantos detalles¡)

 

Observo que cuando cargo la página web, con firefox y firebug, en muchas de las consultas que se realizan , pone:

 

Response Headers

...

connection: keep-alive, close

 

Request Headers

..

connection: keep-alive

 

Curiosamente en las unicas "requests" que no pone "connection: keep-alive" (en Response Headers)  son la de:

www.lamarciana.es y..

www.lamarciana.es/es

 

Gracias por todo¡ Espero que podamos llegar a la clave del problema¡ Saludos.

Link to comment
Share on other sites

Hola.

 

La verdad es que lo único que se me ocurre es que Apache esté cerrando la conexión debido a que sobrepase el time out preestablecido para el keep alive en Apache.

 

Qué valor tienes en la variable: keepalivetimeout de Apache ?

 

Por casualidad no estarás usando Nginx como frontal para Apache?

 

Un saludo

Link to comment
Share on other sites

Me he puesto en contacto con mi proveedor de servicios de hosting, los cuales aseguran que keep alive está trabajando correctamente. Ya veremos como evoluciona el asunto.

En cuanto a los valores que me comentas, no dispongo de esa información. Estoy a la espera de recibirlas.

 

Sea como sea, me resulta extraño que 340 kb tarden tanto en cargar. Tendré que arreglar esto que me trae de cabeza¡

 

Gracias por todo Oka. Estamos en contacto¡

Link to comment
Share on other sites

NNNo lo tienes activo.... te pongo dos ejemplos con wget desde terminal.

 

EL TUYO:

sergio@hack-white ~ $ wget -S www.lamarciana.es/es
--2013-09-04 14:49:46--  http://www.lamarciana.es/es
Resolviendo www.lamarciana.es (www.lamarciana.es)... 217.76.150.42
Conectando con www.lamarciana.es (www.lamarciana.es)[217.76.150.42]:80... conectado.
Petición HTTP enviada, esperando respuesta... 
  HTTP/1.1 404 Not Found
  Date: Wed, 04 Sep 2013 12:49:46 GMT
  Server: Apache
  P3P: CP="IDC DSP COR CURa ADMa OUR IND PHY ONL COM STA"
  Set-Cookie: 3f99a2f33f7744ef0eca694ec6b1a644=jJAjmvgNBmgVcods%2BYt7wYbn2xaafpCS%2B1SHlaPBIus4uIQY9eNdTcuO2UGNOz239k0ApQgzkdzn4fVpPMPKm%2B%2FH06PkMSMUlaL2OexnBhY%3D000075; expires=Sun, 29-Sep-2013 12:49:51 GMT; path=/; domain=www.lamarciana.es; httponly
  Connection: close
  Transfer-Encoding: chunked
  Content-Type: text/html; charset=utf-8
2013-09-04 14:49:54 ERROR 404: Not Found.

EL MIO....QUE SI ESTA ACTIVO:

sergio@hack-white ~ $ wget -S www.sucesta.com
--2013-09-04 14:51:14--  http://www.sucesta.com/
Resolviendo www.sucesta.com (www.sucesta.com)... 5.153.20.101
Conectando con www.sucesta.com (www.sucesta.com)[5.153.20.101]:80... conectado.
Petición HTTP enviada, esperando respuesta... 
  HTTP/1.1 200 OK
  Date: Wed, 04 Sep 2013 12:51:14 GMT
  Server: Apache
  X-Frame-Options: sameorigin
  Expires: Thu, 19 Nov 1981 08:52:00 GMT
  Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
  Pragma: no-cache
  Set-Cookie: sid_customer_20374=448q6u4pmg6uii02p8o2uphml3; expires=Wed, 18-Sep-2013 12:51:15 GMT; path=/; domain=.sucesta.com
  X-Mod-Pagespeed: 1.4.26.4-3396
  Vary: Accept-Encoding,User-Agent
  Host-Header: 192fc2e7e50945beb8231a492d6a8024
  Cache-Control: max-age=0, no-cache
  Content-Length: 65406
  Keep-Alive: timeout=5, max=100
  Connection: Keep-Alive
  Content-Type: text/html; charset=utf-8
Longitud: 65406 (64K) [text/html]
Grabando a: “index.html.1”

100%[======================================>] 65.406       179K/s   en 0,4s    

2013-09-04 14:51:17 (179 KB/s) - “index.html.1” guardado [65406/65406]

Edited by Lauser (see edit history)
Link to comment
Share on other sites

Ya veo Lauser. Muchas gracias por enviarme los ejemplos¡ No entiendo mucho del tema, pero interpreto que cuando se realiza la peticion HTTP/ 1:1 en mi página, has recibido, directamente, un error. (Además de no estár activo keep alive).

Debe de pasar algo con el servidor donde estoy alojado, pues al comienzo del proyecto me enviaba error 500 constántemente, y de golpe y funcionó, y luego... lentitud absoluta¡

Sigo investigando a ver si doy con la clave.  :(

 

Saludos y de nuevo gracias¡

Link to comment
Share on other sites

Ya veo Lauser. Muchas gracias por enviarme los ejemplos¡ No entiendo mucho del tema, pero interpreto que cuando se realiza la peticion HTTP/ 1:1 en mi página, has recibido, directamente, un error. (Además de no estár activo keep alive).

Debe de pasar algo con el servidor donde estoy alojado, pues al comienzo del proyecto me enviaba error 500 constántemente, y de golpe y funcionó, y luego... lentitud absoluta¡

Sigo investigando a ver si doy con la clave.  :(

 

Saludos y de nuevo gracias¡

Habla con tu proveedor...

Link to comment
Share on other sites

Creo que tienes un problema con las URL.... si no defines el idioma si responde... de todas formas el keep no esta activo.

sergio@hack-white ~ $ wget -S www.lamarciana.es/
--2013-09-04 16:40:25--  http://www.lamarciana.es/
Resolviendo www.lamarciana.es (www.lamarciana.es)... 217.76.150.42
Conectando con www.lamarciana.es (www.lamarciana.es)[217.76.150.42]:80... conectado.
Petición HTTP enviada, esperando respuesta... 
  HTTP/1.1 301 Moved
  Date: Wed, 04 Sep 2013 14:40:25 GMT
  Server: Apache
  Cache-Control: no-cache
  Location: http://www.lamarciana.es/es/
  Connection: close
  Transfer-Encoding: chunked
  Content-Type: text/html; charset=utf-8
Ubicación: http://www.lamarciana.es/es/ [siguiente]
--2013-09-04 16:40:28--  http://www.lamarciana.es/es/
Conectando con www.lamarciana.es (www.lamarciana.es)[217.76.150.42]:80... conectado.
Petición HTTP enviada, esperando respuesta... 
  HTTP/1.1 200 OK
  Date: Wed, 04 Sep 2013 14:40:29 GMT
  Server: Apache
  P3P: CP="IDC DSP COR CURa ADMa OUR IND PHY ONL COM STA"
  Set-Cookie: 3f99a2f33f7744ef0eca694ec6b1a644=jJAjmvgNBmgVcods%2BYt7wdN%2BSoE2jvG5knnZIAsoy8s4uIQY9eNdTcuO2UGNOz239WxHV4awCZps8737dffDkzNVH3QPEJHg1hJg2P0by1i29xHXMhULW642nquagHLO000096; expires=Sun, 29-Sep-2013 14:40:29 GMT; path=/; domain=www.lamarciana.es; httponly
  Connection: close
  Transfer-Encoding: chunked
  Content-Type: text/html; charset=utf-8
Longitud: no especificado [text/html]
Grabando a: “index.html.2”

    [ <=>                                   ] 33.506       179K/s   en 0,2s    

2013-09-04 16:40:29 (179 KB/s) - “index.html.2” guardado [33506]

Link to comment
Share on other sites

Esperaré a que me contesten, pero parece que siempre me responden con preguntas sobre lo que les he preguntado¡ O no saben lo que pasa, o es más sencillo negarlo todo¡ Les mandé un email al poco de abrir este post, cuando Oka me comentó el tema del keep-alive.  Me han contestado "nada", o poco, y venían a decirme que está activo.

 

En htaccess tengo puesto:

 

Header set Connection keep-alive
Header set Keep-Alive "timeout=5, max=100"

 

¿Porqué cuando coloco...

KeepAlive on

... ¿recibo error 500?  ¿Porque no reconoce la sintaxis?

 

Mil gracias. Seguimos en contacto.

Link to comment
Share on other sites

Me han respondido esto:

 

El valor keep-alive indicado (_SERVER["HTTP_CONNECTION"] keep-alive) corresponde al valor del encabezado HTTP que se envía desde una petición abierta por parte del cliente. Dicho valor no corresponde a una configuración del servidor.

 

Me han aportado bien poco los amigos del soporte técnico¡ jajajajja... Seguiré buscándome la vida que al final de todo habré aprendido un montón de cosas y lo solucionare¡

 

xD

Link to comment
Share on other sites

Hola

 

Es que el problema está en que en el protocolo HTTP/1.1 ya se establece por defecto que la conexión sea keep-alive.

 

En algún momento tu servidor, o algún script, lanza cabeceras con un CLOSE detrás del keep-alive (que no es necesario especificarlo pero se hace así para tener una compatibilidad con navegadores que sólo entiendan HTTP/1.0).

 

Yo lo que haría es hablar con tu proveedor, con una simple petición podrán ver que no está activo.

 

Un saludo. 

Link to comment
Share on other sites

Gracias a todos por vuestra ayuda¡ Finalmente, y ya en un punto enfadado con mi proveedor de hosting, y tras repetirme que estaba activo varias veces, me contestan que no lo está. Que en mi tipo de servidor compartido no se puede activar esa opción. Vaya por donde¡ Estaba activo, y ahora ya no¡ jajjajajajaj.

 

En cuanto a la velocidad de carga de la web, sigo notando que es durante los primeros segundos donde el servidor se queda loco esperando, pero tras el redireccionamiento va rapidisimo. Osea, de los 350kb que pesa la página, y 44 procesos, hay 2 procesos que tardan el 80% del tiempo de carga, y el resto, 42 procesos, se cargan en menos de 1 segundo¡

 

Esta claro que el keep-alive habría cumplido su función, y la hubiera acelerado un poco. Pese a no poder usar esa tipo de conexión, creo que el problema es otro distinto¡ Siento que esté viene en el procesos de la redirección¡ Sucede algo raro al redireccionar lamarciana.es/es :(((((

 

Un saludo cordial

Link to comment
Share on other sites

Yo me iría a otro proveedor que no me mintiese y que tuviese una mínima infraestructura técnica. (lo de desactivar el keep-alive lo hacen porque tienen que tener el compartido hasta los topes y si lo activan se les queda el servidor mirando a Triana).

 

Lo que comentas del ifmodule, claro que ganas tiempo de carga, si quitas el htaccess y pones todo a ALLOW OVERRIDE NONE ganarás aún más velocidad. (obviamente metiendo las reglas del htaccess en un include en la configuración del VirtualHost)

 

Un saludo.

  • Like 1
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...