php curl錯誤碼7的解決方法:1、開啟selinux目錄下的config檔;2、找到config檔中的「SELINUX=enforcing」這行;3、更改「SELINUX=disabled」;4 、重啟伺服器。
本文操作環境:Windows7系統、PHP7.1版,DELL G3電腦
如何解決php curl 錯誤碼7的問題? php - 如何解決CURL錯誤( 7 ): 無法連線到主機?
1. 問題描述
呼叫第三方接口,本地呼叫一切ok,線上呼叫失敗!
本地透過curLRequest()方法呼叫第三方介面時,curl_errno()方法傳回結果為0,顯示呼叫成功,線上curl_errno()方法回傳結果為7 ,呼叫失敗。
環境:
本地wamp,線上lnmp
為了排除環境問題,在伺服器上cmd執行curl函數對第三方介面進行了post請求,發現呼叫成功!呼叫腳本入下:
curl -i -X POST -H 'Accept:application/json' -H 'Content-Type:application/json;charset=utf-8' -H 'Authorization:**********************=' -d '{"voipAccount":"*********"}' 第三方接口的URL
呼叫第三方介面關鍵程式碼:
/** * @param $requestUrl | String 请求的地址 * @param bool $https * @param $headerInfo | array 头文件信息 * @param string $rquestMethod | String 请求类型 * @param $requestData | json 发送请求的数据 * @return mixed */ public function curLRequest($requestUrl,$requestData,$https=true,$rquestMethod='post') { $headerInfo=[ 'Accept:application/json', 'Content-Type:application/json;charset=utf-8', 'Authorization:'.self::$auth ]; $ch = curl_init();//初始化 curl_setopt($ch, CURLOPT_URL, $requestUrl);//设置访问的URL curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // 模拟用户使用的浏览器 curl_setopt($ch, CURLOPT_HTTPHEADER, $headerInfo); // 设置头信息 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);//只获取页面内容,但不输出 if($https){ curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);//不做服务器认证 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);//不做客户端认证 } if($rquestMethod == 'post'){ curl_setopt($ch, CURLOPT_POST, true);//设置请求是POST方式 curl_setopt($ch, CURLOPT_POSTFIELDS, $requestData);//设置POST请求的数据 } $str = curl_exec($ch);//执行访问,返回结果 if(curl_errno($ch)){ Log::write('结果=========================================================:'.curl_errno($ch)); return ['statuscode' => -1, 'data' => 'curl请求错误,错误码为'.curl_errno($ch)]; } Log::write('结果=========================================================:'.curl_errno($ch)); Log::write('返回结果:'.$str); curl_close($ch);//关闭curl,释放资源 return json_decode($str,true); }
經過各種排查,程式碼無誤,我的問題為線上環境的相關設定問題。
2.解決方法
①開啟selinux目錄下的config檔
nano /etc/selinux/config
②找到config檔案中的SELINUX=enforcing這行
#③更改SELINUX=disabled
#④儲存,退出,重新啟動伺服器
#3.小結
##CURL錯誤7未能連接到權限被拒絕"錯誤是由於CURL請求被某些防火牆或類似的東西阻塞時造成的。
當curl請求與標準端口不匹配時,你將面臨這個問題。
例如如果你在端口1234上做了curl,那麼你將面臨這個問題,因為端口80的URL會給你帶來很容易的結果。
最常見的這個錯誤已經在CentOS和其他帶有'selinux'的作業系統上看到了。
你需要停用或將'selinux'改為允許
推薦學習:《PHP影片教學》#
以上是如何解決php curl 錯誤碼7的問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文比較了酸和基本數據庫模型,詳細介紹了它們的特徵和適當的用例。酸優先確定數據完整性和一致性,適合財務和電子商務應用程序,而基礎則側重於可用性和

本文討論了確保PHP文件上傳的確保,以防止諸如代碼注入之類的漏洞。它專注於文件類型驗證,安全存儲和錯誤處理以增強應用程序安全性。

本文討論了在PHP中實施API速率限制的策略,包括諸如令牌桶和漏水桶等算法,以及使用Symfony/Rate-limimiter之類的庫。它還涵蓋監視,動態調整速率限制和手

本文討論了使用password_hash和pyspasswify在PHP中使用密碼的好處。主要論點是,這些功能通過自動鹽,強大的哈希算法和SECH來增強密碼保護

本文討論了OWASP在PHP和緩解策略中的十大漏洞。關鍵問題包括注射,驗證損壞和XSS,並提供用於監視和保護PHP應用程序的推薦工具。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

SublimeText3漢化版
中文版,非常好用

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具