Soporte » Seguridad » https no seguro

  • Resuelto marort4

    (@marort4)


    Hola, buenos días.

    Tengo una instalación de wordpress multisite en la cual tengo implementado un servicio SSL.

    Antes hacía la redirección automática de http a https con un plugin, el cual comenzó a darme errores y al final terminé por borrarlo y optar por utilizar redirección 301 a través de .htaccess

    Funcionar funciona, pero a pesar de que muestra “https://” no aparece el candado en verde y en la información, a pesar de que muestra el certificado como valido, dice lo siguiente: “Tu conexión con este sitio web no es completamente segura”.

    Este es el código que tengo en .htacces parte del cual he escrito yo y otra parte generada por el plugin “W3 Total Cache”

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTPS} =on
    RewriteRule .* – [E=W3TC_SSL:_ssl]
    RewriteCond %{SERVER_PORT} =443
    RewriteRule .* – [E=W3TC_SSL:_ssl]
    RewriteCond %{HTTP:X-Forwarded-Proto} =https [NC]
    RewriteRule .* – [E=W3TC_SSL:_ssl]
    RewriteCond %{HTTP:Accept-Encoding} gzip
    RewriteRule .* – [E=W3TC_ENC:_gzip]
    RewriteCond %{HTTP_COOKIE} w3tc_preview [NC]
    RewriteRule .* – [E=W3TC_PREVIEW:_preview]
    RewriteCond %{REQUEST_METHOD} !=POST
    RewriteCond %{QUERY_STRING} =””
    RewriteCond %{REQUEST_URI} \/$
    RewriteCond %{HTTP_COOKIE} !(comment_author|wp\-postpass|w3tc_logged_out|wordpress_logged_in|wptouch_switch_toggle) [NC]
    RewriteCond “%{DOCUMENT_ROOT}/wp-content/cache/page_enhanced/%{HTTP_HOST}/%{REQUEST_URI}/_index%{ENV:W3TC_SSL}%{ENV:W3TC_PREVIEW}.html%{ENV:W3TC_ENC}” -f
    RewriteRule .* “/wp-content/cache/page_enhanced/%{HTTP_HOST}/%{REQUEST_URI}/_index%{ENV:W3TC_SSL}%{ENV:W3TC_PREVIEW}.html%{ENV:W3TC_ENC}” [L]
    </IfModule>
    # END W3TC Page Cache core
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTPS} off [OR]
    RewriteCond %{HTTP_HOST} ^www\. [NC]
    RewriteRule ^ https://fr.miamiortiz.com%{REQUEST_URI} [R=301,L,NE]
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    # add a trailing slash to /wp-admin
    RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^ – [L]
    RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
    RewriteRule ^(.*\.php)$ $1 [L]
    RewriteRule . index.php [L]
    </IfModule>

    La página con la que necesito ayuda: [accede para ver el enlace]

Viendo 8 respuestas - 1 de 8 (de 8 total)
  • Javier Casares

    (@javiercasares)

    Quizá sea algo tan simple como añadir una línea en el .htaccess del estilo a esto:

    Header set Content-Security-Policy "upgrade-insecure-requests"

    Con esto todas las peticiones de tu propio dominio harán un upgrade automático de HTTP a HTTPS.

    marort4

    (@marort4)

    Gracias por tu tiempo, Javier.

    He añadido esa linea tal cual pero no parece haber cambio alguno.

    Moderador almendron

    (@almendron)

    No te sale el candado verde porque cargas dos recursos con http:

    1) Se ha bloqueado la carga del contenido activo mixto “http://maps.googleapis.com/maps/api/js?sensor=false&ver=4.9.7”

    2) Se ha bloqueado la carga del contenido activo mixto “http://maps.googleapis.com/maps/api/js?sensor=false&ver=4.9.7”

    La primera solución la tienes aquí: https://gist.github.com/jacobovidal/ef5015e4e05905c6ec684425cf30bc9b
    Incluye la solución que te ha propuesto @javiercasares
    Si no te ha funcionado, podría ser por no estar activado el módulo “mod_headers.c”
    Prueba a ponerlo en el HEAD.

    La segunda solución es buscar en tu plantilla donde se cargan esos dos contenidos y cambiar “http” por “https”.

    Moderador almendron

    (@almendron)

    Y también compruebo que cargas alguna que otra imagen con http. Ejemplo:

    Cargando contenido visual mixto (no seguro) “http://en.miamiortiz.com/wp-content/uploads/sites/2/2017/01/LOGO-WEB.png” en una página segura

    Y no es la única. Botón derecho sobre tu página > ver información de la página > pestaña Medios y ahí podrás ver las imágenes cargadas con http

    Deberías revisar bien todo tu sitio, incluida la plantilla.

    Un detalle interesante es que, en los casos de incluir enlaces externos, no uses http:// o https:// sino, simplemente //.

    Efectivamente, no lo había incluido en el mod.header,,

    Ya he editado el código en el htaccess.

    Puesto que mi web es bastante extensa y me ha sido “imposible” buscar y editar cada uno de los posibles “http” he utilizado el plugin “Better search & replace” para reemplazar todos los enlaces http a https.

    Ha funcionado bien, en las versiones en español y en inglés funciona perfectamente, ya redirige automáticamente hacia https todas las peticiones.

    Sin embargo en el apartado “fr.miamiortiz.com” tras haber hecho los mismos pasos sigue sin mostrarme el candado, en el cual, además, he perdido los enlaces al logo y demás :S

    Solucionado, el plugin Better search & replace me había dado un error el cual ya he solucionado contactando con ellos. Actualmente, la web, funciona perfectamente y hace la redirección sin ningún problema.

    Gracias por vuestra ayuda, sois geniales!!

    Un saludo,
    Kevin.

    Moderador almendron

    (@almendron)

    De nada. Un saludo.

Viendo 8 respuestas - 1 de 8 (de 8 total)
  • Debes estar registrado para responder a este tema.