title: laravel deployed on google app engine doesn't upload files
body: <p>I am trying to upload a file, I am using laravel 4 and deploy on google app engine. Locally file upload works, but then when deploy with google app engine it doesn't.
  Here is my code:</p>
  
  <p>view:</p>
  
  <pre><code>{{ Form::model($v, array('files' =&gt; true,'route' =&gt; array('upload.image', $v-&gt;id),'method' =&gt; 'post','class'=&gt;'form-horizontal','id'=&gt;'upload-images')) }}
              {{ Form::file('image') }}
              &lt;br&gt;
              {{ Form::submit('Add Photo', array('class' =&gt; 'btn btn-primary' )) }}
              {{ Form::close() }}
  </code></pre>
  
  <p>controller</p>
  
  <pre><code>$file = Input::file('image');
          dd($file);
          $destinationPath = 'img_gallery/';
          $extension = $file-&gt;getClientOriginalExtension();
          $filename = 'img_' . $id . '.' . $extension;
          $file-&gt;move($destinationPath, $filename);
  
          $car = Car::find($id);
          $car-&gt;Pic = $filename;
          $car-&gt;save();
          return Redirect::to('/');
  </code></pre>
  
  <p>and it displays an array with file attr. But when deployed with google app engine this code returns NULL. After readin google app engine documentation for php I understood that the problem is that in google app engine you can't write to filesystem app, and in <a href="https://developers.google.com/appengine/docs/php/googlestorage/user_upload#createuploadurl_options" rel="nofollow">this link</a> I found that code for php without laravel and tried to combine with mine like below:</p>
  
  <p>upload_test.blade.php</p>
  
  <pre><code>require_once 'google/appengine/api/cloud_storage/CloudStorageTools.php';
  
  use google\appengine\api\cloud_storage\CloudStorageTools;
  
  $options = [ 'gs_bucket_name' =&gt; 'images_upload'];
  $upload_url = CloudStorageTools::createUploadUrl('upload.handler', $options);
  ?&gt;
  &lt;div class="body"&gt;
      &lt;form action="&lt;?php echo $upload_url ?&gt;" enctype="multipart/form-data" method="post"&gt;
          &lt;input type="file" name="uploaded_files" size="40"&gt;
          &lt;input type="submit" value="Send"&gt;
      &lt;/form&gt;
  &lt;/div&gt;
  </code></pre>
  
  <p>controller</p>
  
  <pre><code> public function upload_image($id) {
          $file = Input::file('image');
          dd($file);
  }
  </code></pre>
  
  <p>route</p>
  
  <pre><code>Route::group(array('before' =&gt; 'auth'), function() {
      Route::post('upload_handler', array('as' =&gt; 'upload.handler', 'uses' =&gt; 'CarController@upload_handler'));
  });
  </code></pre>
  
  <p>controller</p>
  
  <pre><code>public function upload_handler() {
          var_dump($_FILES);
      }
  </code></pre>
  
  <p>But this displays: </p>
  
  <blockquote>
    <p>Symfony \ Component \ HttpKernel \ Exception \
    MethodNotAllowedHttpException</p>
  </blockquote>
  
  <p>Which I know that is an error because form post is not pointing to a route, instead to a variable. The image is stored in google app engine but the problem is that this code doesn't post to controller in order to save path of file in DB. I have tried other ways but no result. I also followed step by step section 6 in <a href="https://gae-php-tips.appspot.com/2013/10/22/getting-started-with-laravel-on-php-for-app-engine/" rel="nofollow">this</a>. Furthermore I tried <a href="https://packagist.org/packages/ajessup/laravel" rel="nofollow">Ajessup package</a> but no result. </p>