J'ai installé Vagrant et Homestead pour tester mon application localement. Tout fonctionne correctement lorsque j'accède à http://mysite.app
dans Firefox et Chrome. Cependant, Safari ne me laissera pas utiliser la version http
/non sécurisée du site et me redirigera automatiquement vers la version sécurisée (https). Par exemple, lorsque vous accédez à http://mysite.app
, Je suis redirigé vers https://mysite.app
.
Les autres navigateurs (Firefox et Chrome) ne me redirigent pas et je peux utiliser la version standard non sécurisée. Ce n'est donc pas une redirection imposée par le serveur.
La redirection elle-même ne serait pas vraiment un problème si Safari me permettait d'accéder à la version https
. Comme il s'agit d'un environnement de développement local, le certificat SSL est auto-signé et Safari ne me permet pas d'accéder à un site avec un certificat non approuvé. Donc au final, j'ai toujours un Safari can't establish a secure connection
erreur lors de l'utilisation de Safari pour accéder à ce site Vagrant.
Safari n'offre plus (plus?) Un moyen d'accepter le certificat auto-signé. Encore une fois, ce n'est pas un problème avec Chrome ou Firefox car ils vous permettent d'ajouter une exception directement à partir du navigateur.
Une idée de la façon dont je peux faire en sorte que Safari utilise la version http
du site ou pour que Safari fasse confiance au certificat auto-signé?
Pour info, j'utilise Safari 11.0.2 sur High Sierra 10.13.2 Beta. Même résultat sur iMac et MacbookAir, donc ce n'est pas lié à l'ordinateur.
Bien que je n'aie pas trouvé pourquoi Safari veut forcer SSL et ne veut pas utiliser la version non sécurisée (http) de mon site sur cette boîte Vagrant/Homestead (comme Firefox ou Chrome), j'ai trouvé un moyen de marquer l'auto certificat de site signé comme approuvé dans MacOS Keychain Access.
Notez que cela ne devrait pas être un problème avec la version précédente de MacOS, car Safari vous permettait d'ajouter une exception directement dans le navigateur et de continuer sur un site avec un certificat SSL non valide. Cette option semble disparue dans Safari 11 (High Sierra).
Donc, une solution pour accéder à mon site Web Vagrant consiste à enregistrer le certificat de site sur l'ordinateur hôte (en utilisant une connexion ssh à la boîte Vagrant ou à un autre navigateur), ajoutez-le au trousseau et marquez-le comme approuvé.
Cependant, un autre problème concernant Keychain Access est survenu. Alors que cela fonctionnait dans la version précédente de MacOS, sous High Sierra (ou au moins 10.13.2 Beta), , la possibilité de marquer un certificat comme approuvé depuis l'application Keychain Access a disparu . Sur mon iMac et MacbookAir, double-cliquer sur le certificat ajouté au trousseau ne fait absolument rien . Même en cliquant sur Get Info
du menu contextuel n'apporte pas la possibilité de modifier le certificat.
ne solution pour cela consiste à utiliser la ligne de commande pour marquer le certificat comme approuvé. À l'aide de Terminal, cd
dans le répertoire où le certificat est enregistré sur votre ordinateur et exécutez cette commande:
Sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain example.app.cer
Changement example.app.cer
avec le nom de votre certificat. Cela marquera le certificat comme approuvé dans Keychain Access et vous permettra de visiter le site local comme s'il avait été signé avec un certificat valide.
tl; dr Ajoutez le certificat de site extrait de la boîte Vagrant/Homestead au trousseau, exécutez la commande et utilisez simplement la connexion https.
La réponse précédente n'est pas complètement correcte. macOS High Sierra a la possibilité de faire confiance à un certificat via l'application Keychain Access, donc aucune CLI n'est nécessaire.
Pas:
Terminé.