Maison > interface Web > js tutoriel > Pourquoi PhantomJS ne parvient-il pas à charger les pages HTTPS malgré les « ignore-ssl-errors » et les modifications de l'agent utilisateur ?

Pourquoi PhantomJS ne parvient-il pas à charger les pages HTTPS malgré les « ignore-ssl-errors » et les modifications de l'agent utilisateur ?

Patricia Arquette
Libérer: 2024-10-26 01:38:28
original
782 Les gens l'ont consulté

Why is PhantomJS Failing to Load HTTPS Pages Despite

PhantomJS a du mal avec les pages HTTPS

Lorsque vous essayez de charger une page HTTPS à l'aide de PhantomJS/CasperJS, vous pouvez rencontrer une erreur malgré la définition de « ignore-ssl-errors » et modification des agents utilisateurs.

Ce problème pourrait provenir de la vulnérabilité SSLv3 (POODLE), incitant les propriétaires de sites Web à désactiver la prise en charge de SSLv3. Étant donné que les versions antérieures de PhantomJS utilisent par défaut SSLv3, le passage à TLSv1 ou même à « n'importe quel » protocole SSL résout le problème :

casperjs --ssl-protocol=tlsv1 yourScript.js
Copier après la connexion
casperjs --ssl-protocol=any yourScript.js
Copier après la connexion

Alternativement, la mise à jour vers PhantomJS 1.9.8 ou version ultérieure résout le problème, bien que cela introduit un bug distinct.

Pour vérifier si SSLv3 est la cause, implémentez un gestionnaire d'événements "resource.error" :

casper.on("resource.error", function(resourceError){
    console.log('Unable to load resource (#' + resourceError.id + 'URL:' + resourceError.url + ')');
    console.log('Error code: ' + resourceError.errorCode + '. Description: ' + resourceError.errorString);
});
Copier après la connexion

Si l'erreur correspond à "Code d'erreur : 6. Description : Échec de la négociation SSL", SSLv3 est probablement le coupable.

Enfin, pensez à utiliser l'option de ligne de commande "--ignore-ssl-errors=true" pour gérer les problèmes de certificat.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal