laravel - forceschema - Chrome redirige.dev a https
laravel https htaccess (7)
De repente, Google Chrome redirige mi dominio de host virtual myapplication.dev a https://myapplication.dev . Ya intenté ir a
chrome: // net-internals / # hsts
E ingrese myapplication.dev en el cuadro de texto en la parte inferior "Eliminar políticas de seguridad de dominio", pero esto no tuvo ningún efecto.
También intenté eliminar los datos del navegador.
Lo que también hice fue cambiar el host v a .app en lugar de .dev pero Chrome aún me redirigió a https: // ...
Es una aplicación Laravel que se ejecuta en Laragon. En otras PC en la misma red, funciona perfectamente.
Este problema no se puede solucionar. A continuación se muestra la razón:
- Google posee .dev gTLD
- Chrome fuerza HTTP a HTTPS en el dominio .dev directamente dentro del código fuente.
Desde el segundo enlace a continuación:
...
// eTLDs
// At the moment, this only includes Google-owned gTLDs,
// but other gTLDs and eTLDs are welcome to preload if they are interested.
{ "name": "google", "include_subdomains": true, "mode": "force-https", "pins": "google" },
{ "name": "dev", "include_subdomains": true, "mode": "force-https" },
{ "name": "foo", "include_subdomains": true, "mode": "force-https" },
{ "name": "page", "include_subdomains": true, "mode": "force-https" },
{ "name": "app", "include_subdomains": true, "mode": "force-https" },
{ "name": "chrome", "include_subdomains": true, "mode": "force-https" },
...
Referencias
No hay forma de evitar que Chrome (> = 63) use https en nombres de dominio
.dev
.
Google ahora posee el
.dev
tld oficial y ya ha declarado que no eliminará esta funcionalidad.
La recomendación es utilizar otro tld para fines de desarrollo, como
.localhost
o
.test
.
Se puede encontrar más información sobre esta actualización en este artículo de Mattias Geniar .
Para Firefox: puede deshabilitar la propiedad network.stricttransportsecurity.preloadlist visitando la dirección: about: config .
Para IE parece que todavía funciona.
Para Chrome, no hay solución, creo que está codificado en el código fuente.
Vea ese artículo: Cómo evitar que Firefox y Chrome obliguen a los dominios dev y foo a usar https
Revisa ese enlace
https://laravel-news.com/chrome-63-now-forces-dev-domains-https
Según este artículo de Danny Wahl, recomienda que utilice uno de los siguientes: ".localhost", ".invalid", ".test" o ".example".
Vale la pena notar que hay otros TLD que están obligados a https: https://chromium.googlesource.com/chromium/src.git/+/63.0.3239.118/net/http/transport_security_state_static.json#262
google
,
dev
,
foo
,
page
,
app
y
chrome
ahora mismo.
Chrome 63 fuerza los dominios .dev a HTTPS a través de HSTS precargado y pronto todos los demás navegadores seguirán.
.dev gTLD ha sido comprado por Google para uso interno y ya no se puede usar con http, solo se permite https. Consulte este artículo para obtener más explicaciones:
https://ma.ttias.be/chrome-force-dev-domains-https-via-preloaded-hsts/
MacOS Sierra, Apache
: después de que Chrome 63 obliga a los dominios de nivel superior .dev a HTTPS a través de HSTS phpmyadmin precargado en mi Mac, deja de funcionar.
Leí
esto
y simplemente
/etc/apache2/extra/http-vhosts.conf
archivo
/etc/apache2/extra/http-vhosts.conf
:
<VirtualHost *:80>
DocumentRoot "/Users/.../phpMyAdmin-x.y.z"
ServerName phpmyadmin.localhost
</VirtualHost>
y reinicie apache (por
sudo /usr/sbin/apachectl stop; sudo /usr/sbin/apachectl start
), y ahora funciona en
http: //phpmyadmin.localhost
:).
Para las aplicaciones de laravel, la solución es similar.
Lo bueno es que al usar el dominio de nivel superior
*.localhost
cuando configura un nuevo proyecto, puede olvidarse de editar
/etc/hosts
.
¿Cuan genial es eso? :)
También hay una excelente propuesta para agregar el dominio .localhost como un nuevo estándar , que sería más apropiado aquí.
ACTUALIZACIÓN 2018
Usar
*.localhost
no es bueno; algunas aplicaciones no lo admitirán como cURL (utilizado por php-guzzle). Más detalles
here
.
Mejor es usar
*.local
.