Sur un serveur hébergé en Chine continentale, j’ai eu la surprise de ne pas être en mesure de mettre à jour wp-cli:
wp cli update
Error: Failed to get url 'https://api.github.com/repos/wp-cli/wp-cli/releases?per_page=100': cURL error 7: Failed to connect to api.github.com port 443: Connection refused.Code language: JavaScript (javascript)
Visiblement, certaines adresses sont injoignables, notamment lorsqu’elles utilisent le port 443 (https).
Evidemment, on peut télécharger wp-cli manuellement et le réinstaller mais si vous souhaitez une solution plus rapide, voilà comment j’ai procédé.
Première solution: édition de /etc/hosts
1. On récupère l’adresse IP de l’adresse api.github.com:
curl --ipv4 -v https://api.github.com
Résultat: 13.250.94.254 port 443Code language: JavaScript (javascript)
2. On édite le fichier /etc/hosts du serveur:
nano /etc/hosts
3. On y ajoute l’adresse IP correspondante à api.github.com:
13.250.94.254 api.github.comCode language: CSS (css)
Et voilà, le téléchargement depuis github est de nouveau accessible.
Deuxième solution: utiliser le drapeau –ipv4
S’il s’agit d’un téléchargement simple, par exemple pour installer wp-clipour la première fois, il suffit d’indiquer le drapeau --ipv4 dans votre commande curl:
curl --ipv4 -v -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
chmod +x wp-cli.phar
mv wp-cli.phar /usr/local/bin/wpCode language: JavaScript (javascript)
Troisième solution: configurer curl avec –ipv4
Histoire de ne pas avoir à éditer le fichier /etc/host pour chaque site distant, autant configurer curl pour utiliser IPv4 par défaut:
echo '--ipv4' >> ~/.curlrcCode language: PHP (php)
Notons que la configuration de ce VPS est très particulière, je n’ai jamais eu à faire ce genre de manipulation sur les autres serveurs dont je m’occupe.
C’est très probablement dû au fait qu’il ne doit pas avoir IPv6 configuré.
Au passage, le filtrage du Great Firewall of China rend également chaque opération/commande assez délicate.
Vous souhaitez enrichir votre site avec de nouvelles fonctionnalités ? Ensemble, donnons vie à vos idées, simplement et efficacement.