在 Ubuntu 上,要使 PHP 實現跨域請求,你可以使用 PHP 的頭信息函數來設置 CORS(跨來源資源共享)相關的響應頭。以下是一個簡單的示例:
cross_domain.php
的文件:<?php
// 設置允許跨域請求的域名,* 表示允許所有域名進行跨域請求
header("Access-Control-Allow-Origin: *");
// 設置允許的請求方法,例如 GET, POST, PUT, DELETE 等
header("Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS");
// 設置允許的請求頭字段,例如 Content-Type, Authorization 等
header("Access-Control-Allow-Headers: Content-Type, Authorization, X-Requested-With");
// 如果是預檢請求(OPTIONS 請求),直接返回成功狀態
if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') {
header("HTTP/1.1 200 OK");
exit();
}
// 你的業務邏輯代碼
echo "Hello, this is a cross-domain request!";
?>
將 cross_domain.php
文件上傳到你的 Ubuntu 服務器上的 Web 目錄(例如 /var/www/html
)。
在前端代碼中,你可以使用 AJAX 或 Fetch API 發起跨域請求。例如,使用 JavaScript 的 Fetch API:
fetch('http://your_server_ip_or_domain/cross_domain.php')
.then(response => response.text())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
這樣,你的 PHP 代碼就可以實現跨域請求了。請注意,為了安全起見,你應該根據實際需求設置允許的域名、請求方法和請求頭字段,而不是使用通配符 *
。