Right now the Amazon S3 component is not able to work on filenames/objectnames containing chars unsuitable for URL. A small test case:
include "Zend/Service/Amazon/S3.php";
$zend = new Zend_Service_Amazon_S3(key1,key2);
$zend->putObject( "giallutest/this is a test", "HELLO WORLD!" );
fails with:
PHP Fatal error: Uncaught exception 'Zend_Uri_Exception' with message 'Invalid URI supplied' in /home/giallu/Desktop/zend/ZendFramework-1.8.0-minimal/library/Zend/Uri/Http.php:156
The solution to this problem, as noted in:
http://developer.amazonwebservices.com/connect/thread.jspa?threadID=15787&tstart=45
is to always urlencode() the object name.
Please also note the Zend_Serivce_Amazon_S3 component is missing from this tracker...
Assigning to Stas