PHP CURLエラーコード7の問題を解決する方法
PHP CURL エラー コード 7 の解決策: 1. selinux ディレクトリの設定ファイルを開きます; 2. 設定ファイル内の「SELINUX=enforcing」行を見つけます; 3. 「SELINUX=disabled」を変更します; 4 . 、サーバーを再起動します。
この記事の動作環境:Windows7システム、PHP7.1バージョン、DELL G3コンピュータ
phpカールの解決方法エラーコード7の質問? CURL エラー (7) を解決する方法: ホストに接続できませんか?
1. 問題の説明
サードパーティ インターフェイスを呼び出すとき、ローカルで呼び出すときはすべて問題ありませんが、オンライン呼び出しは失敗します。
サードパーティ インターフェイスが curLRequest() メソッドを通じてローカルで呼び出される場合、curl_errno() メソッドは呼び出しが成功したことを示す結果 0 を返します。オンラインのcurl_errno()メソッドは結果7を返し、呼び出しは失敗しました。
環境:
ローカル wamp、オンライン lnmp
環境の問題を解決するために、サーバー cmd 上でcurl関数を実行して、3番目のサーバーにポストリクエストを作成しました。通話が成功したことがわかりました。次のようにスクリプトを呼び出します:
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ディレクトリにある設定ファイルを開きます
nano /etc/selinux/config
②設定ファイルで SELINUX=enforcing 行を見つけます
#③SELINUX=disabled を変更します
#④保存して終了し、サーバーを再起動します
3. 概要CURL エラー7 「許可が拒否されました」エラーは、CURL リクエストがファイアウォールなどによってブロックされている場合に発生します。
curl リクエストが標準ポートと一致しない場合、この問題に直面しています。
たとえば、ポート 1234 でcurl を実行すると、ポート 80 の URL では非常に簡単な結果が得られるため、この問題に直面します。
最も一般的に、このエラーは、「selinux」を使用する CentOS およびその他のオペレーティング システムで発生します。
無効にするか、「selinux」を許可するように変更する必要があります
推奨学習: 「
以上がPHP CURLエラーコード7の問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
