Buenos días,
He cambiado recientemente mi tienda de woocommerce a prestashop.
En la nueva tienda tengo habilitado https, pero en bastantes páginas en la barra del navegador la url no se muestra en verde con su candadito, sino en gris, con una nota que dice: tu conexión es privada pero alguien en la red podría cambiar la apariencia de la página..
Ya me pasó en wordpress, y utilicé un módulo que cambiaba todas las url de http a https.
¿Cómo puedo hacer esto en prestashop? Muchas gracias
URL del sitio: Contenido solo visible a usuarios registrados
Hola Laura.
Podrías probar a forzar todas las URL para que carguen con https.
Añade lo siguiente a tu archivo .htacces que encontraras en la raíz de tu cuenta de hosting ( public_html ):
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://contelaypunto.com/$1 [R=301,L,NE]
Un saludo
Cuando hago lo que me indicas me sale el siguiente error:
La página contelaypunto.com no funciona
La página contelaypunto.com te ha redirigido demasiadas veces.
Borrar las cookies.
Hola Laura.
Ok, ¿ tienes añadido en el archivo .htaccess el código para que te re-direccione la web a https ?
El código seria el siguiente:
RewriteEngine On RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://contelaypunto.com/$1 [R,L]
El código que te pase antes tendría que funcionare a no ser que este cargando cookie antigua.
un saludo
No, no hay nada de https. Te lo pego aquí
~~start~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again
# .htaccess automaticaly generated by PrestaShop e-commerce open-source solution
# http://www.prestashop.com - http://www.prestashop.com/forums
SetEnv HTTP_MOD_REWRITE On
RewriteEngine on
#Domain: contelaypunto.com
RewriteRule . - [E=REWRITEBASE:/]
RewriteRule ^api$ api/ [L]
RewriteRule ^api/(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L]
# Images
RewriteRule ^([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$1$2$3.jpg [L]
RewriteRule ^([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$1$2$3$4.jpg [L]
RewriteRule ^([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$1$2$3$4$5.jpg [L]
RewriteRule ^([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg [L]
RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg [L]
RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg [L]
RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg [L]
RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg [L]
RewriteRule ^c/([0-9]+)(-[.*_a-zA-Z0-9-]*)(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/c/$1$2$3.jpg [L]
RewriteRule ^c/([a-zA-Z_-]+)(-[0-9]+)?/.+.jpg$ %{ENV:REWRITEBASE}img/c/$1$2.jpg [L]
# AlphaImageLoader for IE and fancybox
RewriteRule ^images_ie/?([^/]+).(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 [L]
# Dispatcher
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ %{ENV:REWRITEBASE}index.php [NC,L]
AddType application/vnd.ms-fontobject .eot
AddType font/ttf .ttf
AddType font/otf .otf
AddType application/x-font-woff .woff
Header add Access-Control-Allow-Origin "*"
#If rewrite mod isn't enabled
ErrorDocument 404 /index.php?controller=404
# ~~end~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again
HOla
Puesto que es una redirección, prueba colocando el código que te envío Pepe al inicio de todo en el archivo .htaccess.
Además entiendo que en Prestashop tienes habilitado para forzar https, revisa:
https://www.webempresa.com/blog/habilita-ssl-en-prestashop-seguridad-para-ti-y-tus-clientes.html
Saludos.
Pego el código en la linea 1 del archivo y me da el error que os indico.
Si tengo habilitado https en prestashop para todas las páginas. Probé a incluir el código con esta opción deshabilitada y sucedía el mismo error.
Hola,
No es necesario incluir ningún código en el archivo .htaccess para forzar el uso del SSL en PrestaShop. Esto ya se hace desde la administración de la web. En tu caso veo que ya se está forzando sin problemas.
Revisando tu web no veo que me salga ninguna alerta de contenido mixto, que suele ser lo que ocurre cuando se muestra un mensaje como el que comentas.
También he analizado tu página con https://www.whynopadlock.com/ y aquí tampoco se detecta ningún contenido mixto. No se si solo pasa en alguna página en concreto. De ser así, dinos de cual se trata.
Hola Pablo, muchas gracias por contestar.
Pasa en las páginas de categoría.
Investigando, veo el contenido mixto del que me hablas. Por ejemplo, en la categoría "sudadera" tengo esto:
Mixed Content: The page at 'https://contelaypunto.com/sudadera/' was loaded over a secure connection, but contains a form which targets an insecure endpoint 'http://contelaypunto.com/sudadera/?categories_rewrite=&noredirect=1'. This endpoint should be made available over a secure connection.
(index):544
Mixed Content: The page at 'https://contelaypunto.com/sudadera/' was loaded over a secure connection, but contains a form which targets an insecure endpoint 'http://contelaypunto.com/sudadera/'. This endpoint should be made available over a secure connection.
(index):569
Mixed Content: The page at 'https://contelaypunto.com/sudadera/' was loaded over a secure connection, but contains a form which targets an insecure endpoint 'http://contelaypunto.com/sudadera/'. This endpoint should be made available over a secure connection.
(index):1538
Mixed Content: The page at 'https://contelaypunto.com/sudadera/' was loaded over a secure connection, but contains a form which targets an insecure endpoint 'http://contelaypunto.com/sudadera/'. This endpoint should be made available over a secure connection.
Hola Laura.
ok, si ya lo veo, lo que te indica no es no sea segura, sino que contiene contenido mixto, osea URL que no cargan con https.
Revisando un poco la pagina sudaderas veo que los enlaces del menú Nuestros productos no cargan con HTTPS
Revisa las URL de ese menú y molificadas para que apunten con https.
Un saludo
El menú se construye directamente con el módulo blocktopmenu, por lo que no se cómo puedo modificarlas
Hola
Prueba eliminar las urls del menú y agregarlas nuevamente.
Entiendo que has configurado correctamente SSL en tu Prestashop, tal como se comenta en el siguiente artículo: https://www.webempresa.com/blog/habilita-ssl-en-prestashop-seguridad-para-ti-y-tus-clientes.html
Saludos.
Sí.
Tengo activas las ssl en el backoffice de prestashop. Pantallazo 1.
Parece que el error está en la construcción del menú principal, que mete url con http en vez de https, como os decía anteriormente.
He intentado forzar a través del htaccess, añadiendo el código que indica tanto el tutorial que me mandas. Es decir, he añadido en la primera línea de htaccess, antes del código que genera prestashop lo siguiente
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://contelaypunto.com/$1 [R=301,L,NE]
Aparece un error que no permite acceder a la página