Maison php教程 php手册 libcurl升级后找不到libcurl.so.3解决之法

libcurl升级后找不到libcurl.so.3解决之法

Jun 13, 2016 am 09:46 AM
lib libcurl 介绍 升级 dos article 解决

本文章今天来给大家介绍一个libcurl升级后找不到libcurl.so.3解决之法,希望对各位朋友有帮助呀。

系统装的是libcurl 7.19的版本,编译的动态库是libcurl.so.4

自己的程序编译是在libcurl 7.15的版本下编译的,用的是libcurl.so.3的版本,要做下软链接即可:
根据自己使用的是32位系统或者64位系统 做如下处理:

 代码如下 复制代码

cd /usr/lib 或者 cd /usr/lib64
ln -s libcurl.so.4 libcurl.so.3


libcurl主要功能就是用不同的协议连接和沟通不同的服务器~也就是相当封装了的sockPHP 支持libcurl(允许你用不同的协议连接和沟通不同的服务器)。, libcurl当前支持http, https, ftp, gopher, telnet, dict, file, 和ldap 协议。libcurl同样支持HTTPS证书授权,HTTP POST, HTTP PUT, FTP 上传(当然你也可以使用PHP的ftp扩展), HTTP基本表单上传,代理,cookies,和用户认证。
 

给出我的一个简单的代码例子:
说明:
1.关键在curl_easy_setopt函数设置option,可以设置ftp,http,get,post等许多选项,请根据具体使用情况设置。

2.对取回来的数据需要进行判断,比如http下载文件,如果文件不存在,需要进行处理。因为writer是可以将buf填充404 not found等网页内容的,不能将这个内容当成文件内容,所以需要判断http web返回来的code,进行判断。

3.我有个问题,就是想得到服务器上filename的具体名称,verbose调试已经返回了,但是我在getinfo的时候,试过好多选项,但未找到这个存放真实服务器文件名的选项,如果有知道的麻烦告诉我,谢谢了!

 代码如下 复制代码


#include "curl/curl.h"
#pragma comment(lib, "libcurl.lib")

long writer(void *data, int size, int nmemb, string &content);
bool  CurlInit(CURL *&curl, const char* url,string &content);
bool  GetURLDataBycurl(const char* URL, string &content);

void main()
{
    char *url ="http://www.bKjia.c0m";
    string content;
    if ( GetURLDataBycurl(url,content))
    {
        printf("%sn",content);

    }
    getchar();
}

bool CurlInit(CURL *&curl, const char* url,string &content)
{
    CURLcode code;
    string error;
    curl = curl_easy_init();
    if (curl == NULL)
    {
        printf( "Failed to create CURL connectionn");
        return false;
    }
    code = curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, error);
    if (code != CURLE_OK)
    {
        printf( "Failed to set error buffer [%d]n", code );
        return false;
    }
    curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
    code = curl_easy_setopt(curl, CURLOPT_URL, url);
    if (code != CURLE_OK)
    {
        printf("Failed to set URL [%s]n", error);
        return false;
    }
    code = curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1);
    if (code != CURLE_OK)
    {
        printf( "Failed to set redirect option [%s]n", error );
        return false;
    }
    code = curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, writer);
    if (code != CURLE_OK)
    {
        printf( "Failed to set writer [%s]n", error);
        return false;
    }
    code = curl_easy_setopt(curl, CURLOPT_WRITEDATA, &content);
    if (code != CURLE_OK)
    {
        printf( "Failed to set write data [%s]n", error );
        return false;
    }
    return true;
}

long writer(void *data, int size, int nmemb, string &content)
{
    long sizes = size * nmemb;
    string temp(data,sizes);
    content += temp;
    return sizes;
}

bool GetURLDataBycurl(const char* URL,  string &content)
{
    CURL *curl = NULL;
    CURLcode code;
    string error;

    code = curl_global_init(CURL_GLOBAL_DEFAULT);
    if (code != CURLE_OK)
    {
        printf( "Failed to global init default [%d]n", code );
        return false;
    }
   
    if ( !CurlInit(curl,URL,content) )
    {
        printf( "Failed to global init default [%d]n" );
        return PM_FALSE;
    }
    code = curl_easy_perform(curl);
    if (code != CURLE_OK)
    {
        printf( "Failed to get '%s' [%s]n", URL, error);
        return false;
    }
    long retcode = 0;
    code = curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE , &retcode);
    if ( (code == CURLE_OK) && retcode == 200 )
    {
        double length = 0;
        code = curl_easy_getinfo(curl, CURLINFO_CONTENT_LENGTH_DOWNLOAD , &length);
        printf("%d",retcode);
        FILE * file = fopen("1.gif","wb");
        fseek(file,0,SEEK_SET);
        fwrite(content.c_str(),1,length,file);
        fclose(file);

        //struct curl_slist *list;
        //code = curl_easy_getinfo(curl,CURLINFO_COOKIELIST,&list);
        //curl_slist_free_all (list);

        return true;
    }
    else
    {
    //    debug1( "%s n ",getStatusCode(retcode));
        return false;
    }
    curl_easy_cleanup(curl);
    return false;
}

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Solution au problème selon lequel le pack de langue chinoise ne peut pas être installé sur le système Win11 Solution au problème selon lequel le pack de langue chinoise ne peut pas être installé sur le système Win11 Mar 09, 2024 am 09:48 AM

Solution au problème selon lequel le système Win11 ne peut pas installer le pack de langue chinoise Avec le lancement du système Windows 11, de nombreux utilisateurs ont commencé à mettre à niveau leur système d'exploitation pour découvrir de nouvelles fonctions et interfaces. Cependant, certains utilisateurs ont constaté qu'ils ne parvenaient pas à installer le pack de langue chinoise après la mise à niveau, ce qui perturbait leur expérience. Dans cet article, nous discuterons des raisons pour lesquelles le système Win11 ne peut pas installer le pack de langue chinoise et proposerons des solutions pour aider les utilisateurs à résoudre ce problème. Analyse des causes Tout d'abord, analysons l'incapacité du système Win11 à

Cinq conseils pour vous apprendre à résoudre le problème du téléphone Black Shark qui ne s'allume pas ! Cinq conseils pour vous apprendre à résoudre le problème du téléphone Black Shark qui ne s'allume pas ! Mar 24, 2024 pm 12:27 PM

À mesure que la technologie des smartphones se développe, les téléphones portables jouent un rôle de plus en plus important dans notre vie quotidienne. En tant que téléphone phare axé sur les performances de jeu, le téléphone Black Shark est très apprécié des joueurs. Cependant, nous sommes parfois également confrontés à la situation où le téléphone Black Shark ne peut pas être allumé. Pour le moment, nous devons prendre certaines mesures pour résoudre ce problème. Ensuite, partageons cinq conseils pour vous apprendre à résoudre le problème du téléphone Black Shark qui ne s'allume pas : Étape 1 : Vérifiez la puissance de la batterie. Tout d'abord, assurez-vous que votre téléphone Black Shark est suffisamment chargé. C'est peut-être parce que la batterie du téléphone est épuisée

Le pilote ne peut pas être chargé sur cet appareil. Comment résoudre ce problème ? (Testé personnellement et valide) Le pilote ne peut pas être chargé sur cet appareil. Comment résoudre ce problème ? (Testé personnellement et valide) Mar 14, 2024 pm 09:00 PM

Tout le monde sait que si l'ordinateur ne parvient pas à charger le pilote, le périphérique risque de ne pas fonctionner correctement ou d'interagir correctement avec l'ordinateur. Alors, comment résoudre le problème lorsqu'une boîte de dialogue apparaît sur l'ordinateur indiquant que le pilote ne peut pas être chargé sur ce périphérique ? L'éditeur ci-dessous vous apprendra deux façons de résoudre facilement le problème. Impossible de charger le pilote sur cet appareil Solution 1. Recherchez « Kernel Isolation » dans le menu Démarrer. 2. Désactivez l'intégrité de la mémoire et le message "L'intégrité de la mémoire a été désactivée. Votre appareil est peut-être vulnérable." Cliquez derrière pour l'ignorer, et cela n'affectera pas l'utilisation. 3. Le problème peut être résolu après le redémarrage de la machine.

Comment résoudre le problème de l'enregistrement automatique des images lors de la publication sur Xiaohongshu ? Où est l'image enregistrée automatiquement lors de la publication ? Comment résoudre le problème de l'enregistrement automatique des images lors de la publication sur Xiaohongshu ? Où est l'image enregistrée automatiquement lors de la publication ? Mar 22, 2024 am 08:06 AM

Avec le développement continu des médias sociaux, Xiaohongshu est devenue une plateforme permettant à de plus en plus de jeunes de partager leur vie et de découvrir de belles choses. De nombreux utilisateurs sont gênés par des problèmes de sauvegarde automatique lors de la publication d’images. Alors, comment résoudre ce problème ? 1. Comment résoudre le problème de l'enregistrement automatique des images lors de la publication sur Xiaohongshu ? 1. Vider le cache Tout d'abord, nous pouvons essayer de vider les données du cache de Xiaohongshu. Les étapes sont les suivantes : (1) Ouvrez Xiaohongshu et cliquez sur le bouton « Mon » dans le coin inférieur droit (2) Sur la page du centre personnel, recherchez « Paramètres » et cliquez dessus (3) Faites défiler vers le bas et recherchez « ; "Vider le cache". Cliquez sur OK. Après avoir vidé le cache, entrez à nouveau dans Xiaohongshu et essayez de publier des photos pour voir si le problème de sauvegarde automatique est résolu. 2. Mettez à jour la version Xiaohongshu pour vous assurer que votre Xiaohongshu

Comment puis-je gagner de l'argent en publiant des articles sur Toutiao aujourd'hui ? Comment gagner plus de revenus en publiant des articles sur Toutiao dès aujourd'hui ! Comment puis-je gagner de l'argent en publiant des articles sur Toutiao aujourd'hui ? Comment gagner plus de revenus en publiant des articles sur Toutiao dès aujourd'hui ! Mar 15, 2024 pm 04:13 PM

1. Comment pouvez-vous gagner de l'argent en publiant des articles sur Toutiao aujourd'hui ? Comment gagner plus de revenus en publiant des articles sur Toutiao dès aujourd'hui ! 1. Activer les droits et intérêts fondamentaux : les articles originaux peuvent générer des bénéfices grâce à la publicité, et les vidéos doivent être originales en mode écran horizontal pour générer des bénéfices. 2. Activez les droits de 100 fans : si le nombre de fans atteint 100 fans ou plus, vous pouvez tirer des bénéfices des micro-titres, de la création originale de questions-réponses et des questions-réponses. 3. Insistez sur les œuvres originales : les œuvres originales comprennent des articles, des micro-titres, des questions, etc., et doivent contenir plus de 300 mots. Veuillez noter que si des œuvres illégalement plagiées sont publiées en tant qu'œuvres originales, des points de crédit seront déduits, et même les éventuels bénéfices seront déduits. 4. Verticalité : lorsque vous rédigez des articles dans des domaines professionnels, vous ne pouvez pas écrire à volonté des articles dans tous les domaines, vous n'obtiendrez pas de recommandations appropriées, vous ne pourrez pas atteindre le professionnalisme et le raffinement de votre travail et il sera difficile d'attirer des fans. et les lecteurs. 5. Activité : forte activité,

Tutoriel sur la façon de résoudre le problème de l'impossibilité d'accéder à Internet après la mise à niveau du système Win10 Tutoriel sur la façon de résoudre le problème de l'impossibilité d'accéder à Internet après la mise à niveau du système Win10 Mar 27, 2024 pm 02:26 PM

1. Utilisez la touche de raccourci win+x pour ouvrir le menu et sélectionnez [Invite de commandes (administrateur) (A)], comme indiqué ci-dessous : 2. Après être entré dans l'interface d'invite de commande, entrez la commande [ipconfig/flushdns] et appuyez sur Entrée. , comme le montre la figure ci-dessous : 3. Entrez ensuite la commande [netshwinsockresetcatalog] et appuyez sur Entrée, comme le montre la figure ci-dessous : 4. Entrez enfin la commande [netshintipreset] et appuyez sur Entrée, redémarrez l'ordinateur et vous pourrez accéder à Internet. , comme le montre la figure ci-dessous :

Xiaoyi est devenu un agent intelligent ! L'intelligence native HarmonyOS NEXT Hongmeng ouvre une nouvelle ère de l'IA Xiaoyi est devenu un agent intelligent ! L'intelligence native HarmonyOS NEXT Hongmeng ouvre une nouvelle ère de l'IA Jun 22, 2024 am 01:56 AM

Le 21 juin, la Huawei Developer Conference 2024 (HDC2024) s'est à nouveau réunie au lac Songshan, à Dongguan. Lors de cette conférence, la chose la plus frappante est que HarmonyOSNEXT lance officiellement la version bêta pour les développeurs et les utilisateurs pionniers, et démontre de manière exhaustive les trois fonctionnalités innovantes « bouleversantes » d'HarmonyOSNEXT dans tous les scénarios, l'intelligence native et la sécurité native. Intelligence native HarmonyOSNEXT : ouvrir une nouvelle ère de l'IA Après avoir abandonné le framework Android, HarmonyOSNEXT est devenu un système d'exploitation véritablement indépendant d'Android et d'iOS, ce que l'on peut qualifier de renaissance sans précédent. Parmi ses nombreuses nouvelles fonctionnalités, l’intelligence native est sans aucun doute la nouvelle fonctionnalité qui peut le mieux apporter aux utilisateurs des sensations intuitives et des améliorations d’expérience.

Comment mettre à niveau Xiaomi 14Pro vers ThePaper OS ? Comment mettre à niveau Xiaomi 14Pro vers ThePaper OS ? Mar 18, 2024 pm 07:34 PM

Le Mi 14 Pro est le dernier téléphone phare de Xiaomi, et ThePaper OS est un nouveau système d'exploitation développé indépendamment par Xiaomi, dédié à offrir une expérience utilisateur plus fluide et plus intelligente. Avec le développement continu de la technologie, ThePaper OS est également constamment mis à jour et mis à niveau. Tant d'utilisateurs qui utilisent des téléphones mobiles Xiaomi pour la première fois demandent aux utilisateurs de Xiaomi 14Pro comment mettre à niveau ThePaper OS ? Comment mettre à niveau le Xiaomi Mi 14 Pro vers Thermal OS ? Il n'est pas nécessaire de mettre à jour l'usine d'origine avec Thermal OS. Comment mettre à jour d'autres modèles prenant en charge ThePaper OS : 1. Ouvrez l'application de paramètres de votre téléphone et recherchez l'option de mise à jour du système. 2. Le système détectera automatiquement la version actuelle du système et vous demandera lorsqu'une nouvelle version est disponible pour la mise à jour. 3. Cliquez simplement sur « Mettre à jour maintenant » et le système commencera automatiquement le téléchargement.

See all articles