我有一個向電報發送請求的方法,這個函數在我的服務器上按預期正常工作。轉移到客戶服務器後,我收到來自電報的錯誤:Bad Request: URL host is empty
。PHP CURL多部分表單數據無法上傳文件(PHP版本5.6)
是通過捲曲發送的數據是:
$data = array(
"chat_id" => "user_id",
"video" => "@/path/to/file/tested/successfully",
"caption" => "My Text"
);
並且對於捲曲設置的選項是如下:
curl_setopt($ch, CURLOPT_URL, 'URL/TO/TELEGRAM/API');
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-type: multipart/form-data"));
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
此代碼正常工作我的服務器上,我認爲是有必須在服務器上設置的配置。
另一個應該關聯的問題是:當我提供錯誤的文件路徑時,在第一臺服務器上,我預計從curl得到Error Code: 3, Couldn't open file
,但在第二臺服務器上,我將再次得到Bad Request: URL host is empty
。
所以,也許我可以說,第二臺服務器上的捲曲無法理解video
索引是一個文件。
首先服務器是專用的,但第二個被共享主機(2主機測試)(愉1)
第一服務器PHP版本是38年5月5日,但第二個是5.6(愉2 )
改變第二個PHP版本38年5月5日之後,它工作正常(發現3)
任何幫助將不勝感激
簡短,準確和完整的答案。非常感謝 –