Erreur empêchant la mise à jour vers WordPress 4.7 (Créer un compte)

  • WordPress :4.7
  • Statut : non résolu
9 sujets de 1 à 9 (sur un total de 9)
  • Auteur
    Messages
  • #1614428
    karnabal
    Participant
    Initié WordPress
    46 contributions

    Bonjour,

    Ma configuration WP actuelle

    • Version de PHP/MySQL : 5.5/5.5
    • Thème utilisé : ShiftCV
    • Extensions en place : Sucuri Security – Auditing, Malware Scanner and Hardening
    • Nom de l’hébergeur : OVH
    • Adresse du site :

    Problème(s) rencontré(s) :

    Même après désactivation des extensions, impossible de passer WP en 4.7, je fais face au message suivant :

    <b>Warning</b>: Une erreur imprévue est survenue. Il pourrait y avoir un problème avec WordPress.org ou la configuration de ce serveur. Si vous continuez à rencontrer ce problème, veuillez vous rendre sur le forums d’entraide (en anglais). (WordPress n’a pas pu établir de connexion sécurisée vers WordPress.org. Veuillez contacter l’administrateur de votre serveur.) in <b>/home/xxxxx/xxxxx/wp-admin/includes/update.php</b> on line <b>122</b>

    Téléchargement de la mise à jour depuis <span class= »code »>http://downloads.wordpress.org/release/fr_FR/wordpress-4.7.1.zip</span>…

    Le téléchargement a échoué.: cURL error 77: error setting certificate verify locations: CAfile: /home/xxxxx/xxxxx/wp-includes/certificates/ca-bundle.crt CApath: /etc/ssl/certs

    Échec de l’installation

    Même quand je veux activer un autre thème, je rencontre une erreur.

    J’avais essayé de mettre en place le SSL que propose OVH, mais en vain. Là, je viens de le désactiver depuis l’interface d’administration de l’hébergeur, mais il y a toujours l’erreur.

    Quelqu’une a une idée de comment résoudre ce problème proprement ?

    Merci d’avance !

    #1614490
    Qwindoo
    Modérateur
    Maître WordPress
    2861 contributions

    Hello,

    Le problème de fond est que ton serveur ne trouve pas ou n’a pas le droit d’accéder au fichier de validation ca-bundle.crt.
    Si tu as accès à la config de ton serveur (vps ou dédié), regarde de ce côté d’abord. Sinon, je te conseille de demander à ton hébergeur, ça ressemble à un problème soit de mauvaise configuration du SSL soit de une mise à jour système qui s’est plantée en cours de route.

    Si tu dois absolument passer la mise à jour rapidement, tu devrais pouvoir désactiver la vérification temporairement en ajoutant la ligne suivante lors de l’appel à wp_remote_get/post à la ligne 121:

    'sslverify' => false

    #1614541
    karnabal
    Participant
    Initié WordPress
    46 contributions

    Salut Qwindoo,

    Mon site est sur un serveur mutualisé. J’allais contacter le support, puis je me suis dit que tant qu’à le contacter, autant refaire une tentative d’installation du SSL.

    Merci pour tes explications, dont la solution de contournement. 🙂

    #1614550
    pean.martin@live.fr
    Participant
    Initié WordPress
    2 contributions

    bonjour

    pouvez-vous me dire ou se trouve le wp_remote_get/?

     

    merci

    #1614552
    pean.martin@live.fr
    Participant
    Initié WordPress
    2 contributions

    bonjour

    pouvez-vous me dire ou se trouve le wp_remote_get/?

    #1615291
    karnabal
    Participant
    Initié WordPress
    46 contributions

    Même question que Martin.

    Par ailleurs, le support d’OVH me demande de voir ce problème avec le support de WordPress. ^^ Quand je leur ai dit que du côté du support de WP, on m’avait de voir avec eux, ils m’ont proposé de modifier la ligne 122 du fichier update.php. Soit la ligne sous  » headers_sent() || WP_DEBUG ? E_USER_WARNING : E_USER_NOTICE » (ici, la ligne n°29).

    Je vais essayer de désactiver temporairement la vérification, mais j’aimerais bien pouvoir faire les mises à jour de mon site sans remettre chaque fois les mains dans le code. 🙂

     

    /**
    * Gets and caches the checksums for the given version of WordPress.
    *
    * @since 3.7.0
    *
    * @param string $version Version string to query.
    * @param string $locale Locale to query.
    * @return bool|array False on failure. An array of checksums on success.
    */
    function get_core_checksums( $version, $locale ) {
    $url = $http_url = 'http://api.wordpress.org/core/checksums/1.0/?' . http_build_query( compact( 'version', 'locale' ), null, '&' );

    if ( $ssl = wp_http_supports( array( 'ssl' ) ) )
    $url = set_url_scheme( $url, 'https' );

    $options = array(
    'timeout' => ( ( defined('DOING_CRON') && DOING_CRON ) ? 30 : 3 ),
    );

    $response = wp_remote_get( $url, $options );
    if ( $ssl && is_wp_error( $response ) ) {
    trigger_error(
    sprintf(
    /* translators: %s: support forums URL */
    __( 'An unexpected error occurred. Something may be wrong with WordPress.org or this server’s configuration. If you continue to have problems, please try the <a href="%s">support forums</a>.' ),
    __( 'https://wordpress.org/support/' )
    ) . ' ' . __( '(WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.)' ),
    headers_sent() || WP_DEBUG ? E_USER_WARNING : E_USER_NOTICE
    );
    $response = wp_remote_get( $http_url, $options );
    }

    if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) )
    return false;

    $body = trim( wp_remote_retrieve_body( $response ) );
    $body = json_decode( $body, true );

    if ( ! is_array( $body ) || ! isset( $body['checksums'] ) || ! is_array( $body['checksums'] ) )
    return false;

    return $body['checksums'];
    }

    #1615316
    karnabal
    Participant
    Initié WordPress
    46 contributions

    Bon, je ne sais pas si la manoeuvre est très propre mais j’ai modifié le code ainsi :

    	if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) )
    return false;

    $body = trim( wp_remote_retrieve_body( $response ) );
    $body = json_decode( $body, true );

    if ( ! is_array( $body ) || ! isset( $body['checksums'] ) || ! is_array( $body['checksums'] ) )
    return false; add_filter( 'https_ssl_verify', '__return_false' );

    return $body['checksums'];

    et j’ai pu réaliser les mises à jour de WP et des extensions.

    Ah oui! Le support d’OVH me propose donc de vérifier le script, mais aussi de modifier les appels HTTP en HTTPS.

    Je vous invite à vérifier votre script et modifier les appels http en https. Comme l’indique le message d’erreur, veuillez vérifier le fichier /home/graphici/franthonycontat/wp-admin/includes/update.php on line 122.

    Quelqu’un pourrait m’aider à réaliser ces tâches, de sorte à ce que je puisse me retourner sur l’hébergeur si les scripts sont « nickels » ?

    #1615319
    karnabal
    Participant
    Initié WordPress
    46 contributions

    J’ai donc pu procéder aux mises à jour, mais j’avais oublié la mise à jour des thèmes. J’ai essayé, après avoir mis en commentaire la ligne qui consiste à désactiver la vérification du mode sécurisé. Et ça a fonctionné ! Du coup, j’ai réinstallé une vieille extension (dont la MAJ bloquait précédemment), et j’ai effectivement pu accomplir la mise à jour. ^^ Il faut croire qu’avoir empêché la vérification du SSL même de manière temporaire permet de débloquer la situation.

    #2284859
    Yeye64
    Participant
    Initié WordPress
    26 contributions

    Bonjour,

    Merci !!

    J’ai eut ce soucis en changeant d’hebergeur, surement la version php qui était differente.

    Penser à bien remettre le code d’origine 🙂

9 sujets de 1 à 9 (sur un total de 9)
  • Vous devez être connecté pour répondre à ce sujet.