Bagaimana untuk melaksanakan permintaan merentas domain dalam php

王林
Lepaskan: 2023-03-12 21:16:02
asal
6700 orang telah melayarinya

Cara melaksanakan permintaan merentas domain dalam PHP: Anda boleh membenarkan akses kepada semua nama domain dengan menetapkan [header('Access-Control-Allow-Origin:*');].

Bagaimana untuk melaksanakan permintaan merentas domain dalam php

Persekitaran pengendalian artikel ini: sistem Windows 10, PHP 7, komputer thinkpad t480.

Dalam PHP, jika kita perlu melaksanakan merentas domain, kita boleh melakukannya dengan menetapkan Access-Control-Allow-Origin. Seterusnya kami memberikan contoh untuk membantu anda memahami dengan lebih baik.

Andaikan bahawa nama domain klien semasa ialah client.runoob.com dan nama domain yang diminta ialah server.runoob.com.

Jika kami terus menggunakan ajax untuk mengakses, ralat berikut akan berlaku:

XMLHttpRequest cannot load http://server.runoob.com/server.php. No 'Access-Control-Allow-Origin' header is present on the requested resource.Origin 'http://client.runoob.com' is therefore not allowed access.
Salin selepas log masuk

1. Benarkan satu nama domain mengakses

Nyatakan nama domain (http ://client. runoob.com) untuk akses merentas domain, anda hanya perlu menambah kod berikut pada pengepala fail http://server.runoob.com/server.php:

header('Access-Control-Allow-Origin:http://client.runoob.com');
Salin selepas log masuk

2. Benarkan berbilang nama domain mengakses

Nyatakan berbilang nama domain (http://client1.runoob.com, http://client2.runoob.com, dsb.) untuk akses merentas domain, kemudian hanya gunakan http://server.runoob.com/server Tambahkan kod berikut pada pengepala fail php:

$origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : '';  
  $allow_origin = array(  
    'http://client1.runoob.com',  
    'http://client2.runoob.com'  );  
  if(in_array($origin, $allow_origin)){  
    header('Access-Control-Allow-Origin:'.$origin);       }
Salin selepas log masuk

3. Benarkan akses kepada semua nama domain

Untuk membenarkan akses kepada semua nama domain, hanya http://server.runoob.com/ Tambahkan kod berikut pada pengepala fail server.php:

header('Access-Control-Allow-Origin:*');
Salin selepas log masuk

Pembelajaran yang disyorkan: latihan php

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan permintaan merentas domain dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan