Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menyelesaikan Ralat HTTPS dalam file_get_contents() Apabila Menghadapi \"Gagal Membuka Strim\"?

Bagaimana untuk Menyelesaikan Ralat HTTPS dalam file_get_contents() Apabila Menghadapi \"Gagal Membuka Strim\"?

Linda Hamilton
Linda Hamiltonasal
2024-10-23 21:43:01841semak imbas

How to Resolve HTTPS Errors in file_get_contents() When Encountering

Mengatasi Ralat HTTPS dalam file_get_contents()

Apabila menggunakan file_get_contents() untuk mewujudkan sambungan melalui protokol HTTPS, ia mungkin menghadapi "gagal untuk ralat aliran terbuka". Untuk membetulkan isu ini dan mendayakan komunikasi melalui saluran selamat, keperluan tertentu mesti dipenuhi.

Keperluan untuk Keserasian HTTPS:

  • Sambungan OpenSSL PHP: Sambungan php_openssl mesti dipasang dan diaktifkan. Sambungan ini menyediakan kefungsian berkaitan kripto yang diperlukan.
  • allow_url_fopen Tetapan: Parameter konfigurasi PHP allow_url_fopen mesti ditetapkan kepada "Hidup". Ini membolehkan PHP menyambung ke URL jauh.

Mendayakan Sokongan HTTPS dalam PHP.ini:

Untuk memastikan keserasian, tambahkan baris berikut pada php. ini jika ia belum ada:

extension=php_openssl.dll

allow_url_fopen = On

Kod Kemas Kini dengan Sokongan HTTPS:

Dengan konfigurasi yang sesuai, coretan kod yang disediakan boleh diubah suai untuk berfungsi dengan sambungan HTTPS:

<code class="php">function send($packet, $url) {
  $ctx = stream_context_create(
    array(
      'https'=>array(
        'header'=>"Content-type: application/x-www-form-urlencoded",
        'method'=>'POST',
        'content'=>$packet
      )
    )
  );

  return file_get_contents($url, 0, $ctx);
}</code>

Dengan melaksanakan pengubahsuaian ini, sambungan HTTPS boleh diwujudkan dengan jayanya, menghapuskan ralat "gagal membuka strim".

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat HTTPS dalam file_get_contents() Apabila Menghadapi \"Gagal Membuka Strim\"?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn