1

動画を Wistia にアップロードしようとしています。ビデオはローカル サーバーに正常にアップロードされています。しかし、開発サーバーに移動すると、ビデオがアップロードされず、「Internal Sever Error」のようなエラーが表示されます。

表示されるエラー メッセージ:

Array
(
    [0] => HTTP/1.1 100 Continue

HTTP/1.1 500 Internal Server Error
Server: nginx/1.4.6 (Ubuntu)
Date: Mon, 07 Mar 2016 10:07:57 GMT
Content-Type: text/html;charset=utf-8
Content-Length: 30
Status: 500 Internal Server Error
Access-Control-Allow-Origin: *
Set-Cookie: __bakery_session=BAh7BkkiD3Nlc3Npb25faWQGOgZFVEkiRTYxN2JjZjE2OGI0YzJmYTE3MDU5%0AZTU0MWNmNWZlNjVkNDQzNzhmOWYwOGNlMWE0YTliNTQyMDNhNDg2ZGY3YjYG%0AOwBG%0A--4d80faca0eafbbec57b24297ed762aa798486fde; path=/; HttpOnly
Set-Cookie: rack.session=BAh7BkkiD3Nlc3Npb25faWQGOgZFVEkiRTYxN2JjZjE2OGI0YzJmYTE3MDU5%0AZTU0MWNmNWZlNjVkNDQzNzhmOWYwOGNlMWE0YTliNTQyMDNhNDg2ZGY3YjYG%0AOwBG%0A; path=/; HttpOnly
X-Served-By: bakery-breadroute-roll,bakery-prime-changeling

Internal Server Error

)

ビデオアップロード用のマイコード:

<?php
if ($_POST['submit']) {
   $filePath = $_FILES['fileUploaded']['tmp_name'];

        $data = array(
        'api_password'  => '0fxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx5',
        'file'          => '@'.realpath($filePath),
        'description'   => 'This is a test video',
        );

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_URL, "https://upload.wistia.com" );
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);    
    $result = curl_exec($ch);
    curl_close($ch);

}
    ?>
<form name="upload-form" method="POST" enctype="multipart/form-data">
    <input type="file" name="fileUploaded">
    <input type="submit" name="submit" value="Upload">
</form>

この問題を解決するために、誰でも私を助けてください。

4

1 に答える 1

2

はい、ついにエラーを解決しました。cURL ファイル オブジェクト メソッドを使用する。

// Create a cURL handle
$ch = curl_init('http://example.com/upload.php');

// Create a CURLFile object
$cfile = new CURLFile('cats.jpg','image/jpeg','test_name');

// Assign POST data
$data = array('test_file' => $cfile);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

// Execute the handle
curl_exec($ch);

http://php.net/manual/en/curlfile.construct.php

于 2016-03-25T11:26:45.350 に答える