2015-01-03 72 views
0

我測試了下面的一段代碼,看看我是否可以在谷歌的雲存儲上傳圖片到桶。圖片上傳到谷歌鬥唉雲存儲

這是我的app.yaml文件:

application: test-795 
version: 1 
runtime: php 
api_version: 1 

handlers: 

# Serve images as static resources. 
- url: /(.+\.(gif|png|jpg))$ 
    static_files: \1 
    upload: .+\.(gif|png|jpg)$ 
    application_readable: true 

- url: /(.+\.php).* 
    script: \1 

- url: /upload 
    script: fileimage.php 

,這是上傳圖像文件到鬥我fileimage.php文件:

<?php 

require_once 'google/appengine/api/cloud_storage/CloudStorageTools.php'; 
use google\appengine\api\cloud_storage\CloudStorageTools; 

$options = [ 'gs_bucket_name' => 'test-795.appspot.com' ]; 
$upload_url = CloudStorageTools::createUploadUrl('/upload', $options); 

    if(isset($_POST['do-upload']) AND $_POST['do-upload'] === "yes"){ 

    $yesupload = $_POST['do-upload']; 
    preg_match("/yes/", "".$yesupload.""); 

    $filename = $_FILES['testupload']['name']; 

    $gs_name = $_FILES['testupload']['tmp_name']; 
    move_uploaded_file($gs_name, 'gs://test-795.appspot.com/'.$filename.''); 
?> 

<div class="contentArea"> 
<?php 
echo "<p class=\"SomeSpaceDude\">Hey file is uploaded, Yes! ".$yesupload." !</p>"; 
echo "<p class=\"SomeSpaceDude\">This is the file name: ".$filename."</p>"; 
} 

echo"</div>"; 
?> 

<form class="SomeSpaceDude" action="<?php echo $upload_url?>" enctype="multipart/form-data" method="post"> 
<p>Files to upload: </p> <br> 
<input type="hidden" name="do-upload" value="yes"> 
<input class="SomeSpaceDude topcoat-button" type="file" name="testupload" > 
<input class="SomeSpaceDude topcoat-button" type="submit" value="Upload"> 
</form> 
</div> 

當我使用本地主機運行該文件:8080我收到消息嘿文件上傳,是的!是的!我的網址變得像這樣:localhost:8080/_ah/upload/ahVkZXZ -Y ... 在我的存儲桶上檢查名爲test-795的google存儲並且沒有上傳任何內容。

我也部署它,當我按下上傳按鈕後測試它時,我得到一個空白頁面和網址鏈接如下:test-795.appspot.com/_ah/upload/AMmfu6 ...檢查在我的桶裏再也沒有東西了。 任何想法我在這裏想念什麼?

回答

3

當您在開發服務器上運行時,文件不會上傳到真正的雲存儲服務,只能是本地模擬。

在生產服務器上,檢查日誌以查看可能發生的上傳情況。

+0

我想工作當地也有GCS。有沒有辦法查看模擬桶?爲什麼我的上傳在本地發生故障,當他們部署時工作率達到100%? –

1

的博韋代碼工作正常...我終於發現,問題是,我應該在上面的代碼測試-795在任何地方使用,而不是test-795.appspot.com

相關問題