天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

php使用curl訪問(wèn)https示例分享

為方便說(shuō)明,先上代碼吧

復(fù)制代碼 代碼如下:
/**
 * curl POST
 *
 * @param   string  url
 * @param   array   數(shù)據(jù)
 * @param   int     請(qǐng)求超時(shí)時(shí)間
 * @param   bool    HTTPS時(shí)是否進(jìn)行嚴(yán)格認(rèn)證
 * @return  string
 */ 
function curlPost($url, $data = array(), $timeout = 30, $CA = true){   

    $cacert = getcwd() . '/cacert.pem'; //CA根證書(shū) 
    $SSL = substr($url, 0, 8) == "https://" ? true : false; 

    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, $url); 
    curl_setopt($ch, CURLOPT_TIMEOUT, $timeout); 
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout-2); 
    if ($SSL && $CA) { 
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);   // 只信任CA頒布的證書(shū) 
        curl_setopt($ch, CURLOPT_CAINFO, $cacert); // CA根證書(shū)(用來(lái)驗(yàn)證的網(wǎng)站證書(shū)是否是CA頒布) 
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); // 檢查證書(shū)中是否設(shè)置域名,并且是否與提供的主機(jī)名匹配 
    } else if ($SSL && !$CA) { 
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 信任任何證書(shū) 
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 1); // 檢查證書(shū)中是否設(shè)置域名 
    } 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:')); //避免data數(shù)據(jù)過(guò)長(zhǎng)問(wèn)題 
    curl_setopt($ch, CURLOPT_POST, true); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
    //curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); //data with URLEncode 

    $ret = curl_exec($ch); 
    //var_dump(curl_error($ch));  //查看報(bào)錯(cuò)信息 

    curl_close($ch); 
    return $ret;   
}   

如果URL地址是https打頭,那就走SSL,否則就走普通的HTTP協(xié)議。

是否走HTTPS的話就安全了嗎?其實(shí)SSL也有不同的驗(yàn)證程度。

例如需不需要驗(yàn)證證書(shū)中的公用名呢?(BTW:公用名(Common Name)一般來(lái)講就是填寫(xiě)你將要申請(qǐng)SSL證書(shū)的域名 (domain)或子域名(sub domain)。)

需要驗(yàn)證主機(jī)名嗎?

是任何證書(shū)都信任呢還是只信任CA頒布的呢?

(我擦嘞,電池快沒(méi)點(diǎn)了,只撿關(guān)鍵地兒說(shuō)了 - -|||)

如果網(wǎng)站SSL證書(shū)買(mǎi)的是CA的(通常比較貴),那么訪問(wèn)時(shí)可以使用比較嚴(yán)格的認(rèn)證,即:

復(fù)制代碼 代碼如下:
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);   // 只信任CA頒布的證書(shū)
curl_setopt($ch, CURLOPT_CAINFO, $cacert); // CA根證書(shū)(用來(lái)驗(yàn)證的網(wǎng)站證書(shū)是否是CA頒布)
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); // 檢查證書(shū)中是否設(shè)置域名,并且是否與提供的主機(jī)名匹配

如果網(wǎng)站的證書(shū)是自己生成的,或者是網(wǎng)上的小機(jī)構(gòu)申請(qǐng)的,那么訪問(wèn)時(shí)如果使用嚴(yán)格認(rèn)證則不會(huì)通過(guò),直接返回false。(對(duì)了,返回false時(shí)可以打印curl_error($ch)查看具體錯(cuò)誤信息。)此時(shí)可以根據(jù)情況通過(guò)降低驗(yàn)證程度來(lái)保證正常訪問(wèn),例如:
復(fù)制代碼 代碼如下:
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 信任任何證書(shū)
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 1); // 檢查證書(shū)中是否設(shè)置域名(為0也可以,就是連域名存在與否都不驗(yàn)證了)

平時(shí)我們使用瀏覽器訪問(wèn)各個(gè)https網(wǎng)站時(shí),有時(shí)會(huì)遇到證書(shū)不受信的提示,其實(shí)就是因?yàn)檫@些網(wǎng)站的證書(shū)不是正規(guī)CA機(jī)構(gòu)頒布的。

市面上各種瀏覽器中都內(nèi)置了CA根證書(shū)列表信息,訪問(wèn)有CA頒布證書(shū)的網(wǎng)站時(shí),會(huì)根據(jù)根證書(shū)驗(yàn)證這些網(wǎng)站的證書(shū),所以就不會(huì)有這個(gè)提示了。

關(guān)于CA根證書(shū)文件,其實(shí)就是包含了各個(gè)主要CA機(jī)構(gòu)的公鑰證書(shū),用來(lái)驗(yàn)證網(wǎng)站的證書(shū)是否是這些機(jī)構(gòu)頒發(fā)的。

這里的這個(gè)文件是來(lái)源于mozilla的源碼樹(shù),又轉(zhuǎn)換成PEM格式證書(shū)文件。(大家可以到這里下載現(xiàn)成的http://curl.haxx.se/ca/cacert.pem)

最后說(shuō)一個(gè)和SSL無(wú)關(guān)的東西:
復(fù)制代碼 代碼如下:
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:'));

這個(gè)主要是為了解決POST時(shí)數(shù)據(jù)過(guò)長(zhǎng)問(wèn)題

php技術(shù)php使用curl訪問(wèn)https示例分享,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 被老总按在办公桌吸奶头 | 高挑人妻无奈张开腿 | xxxx69动漫| seyeye免费高清观看 | 青春禁区动漫免费观看 | 国内精品伊人久久久久 | 麻豆XXXX乱女少妇精品-百度 | 欧美午夜精品一区二区蜜桃 | 真人美女精美小穴 | 亚洲 欧美 国产 综合 在线 | 最新亚洲人成网站在线影院 | 无码成人AAAAA毛片含羞草 | 亚洲免费网站在线观看 | 91区国产福利在线观看午夜 | 日日天干夜夜狠狠爱 | 狠狠啪在线香蕉 | 亚洲综合国产在不卡在线 | 人妻美妇疯狂迎合 | 91热久久免费频精品99欧美 | yellow片在线观看免费观看动漫 | 他揉捏她两乳不停呻吟口述 | 龙岩综合频道 | 么公一夜要了我一八次视频HD | 999www成人免费视频 | 妈妈的职业3完整版在线播放 | 免费三级网址 | 久久影院毛片一区二区 | WWW色视频片内射 | 看 视频一一级毛片 | 99re在这里只有精品 | 亚洲第一天堂无码专区 | 天美传媒在线观看免费完整版 | 中文字幕在线观看亚洲日韩 | 少妇无码吹潮久久精品AV网站 | 簧片免费观看 | 久久影院一区 | 日日摸夜添夜夜夜添高潮 | 欧美牲交A欧美牲交 | 日韩欧美中文字幕在线二视频 | 精品国产麻豆免费人成网站 | 国产精品久久久久久搜索 |