Se non è possibile eseguire codice sul server o eseguire le richieste allora, no, non si può fare questo. Dovrai scaricare il file su un server o computer che possiedi e caricare da lì.
Potete vedere le operazioni che è possibile eseguire su Amazon S3 a http://docs.amazonwebservices.com/AmazonS3/latest/API/APIRest.html
Controllo delle operazioni sia per il resto e SOAP API vedrete che non c'è modo di dare Amazon S3 un URL remoto e averlo afferrare il oggetto per te. Tutte le richieste PUT richiedono che i dati dell'oggetto siano forniti come parte della richiesta. Significa che il server o il computer che sta iniziando la richiesta web deve avere i dati.
Ho avuto un problema simile in passato in cui volevo scaricare le miniature di Facebook dei miei utenti e caricarle su S3 per l'utilizzo sul mio sito. Il modo in cui l'ho fatto è stato scaricare l'immagine da Facebook nella memoria sul mio server, quindi caricare su Amazon S3 - la cosa completa è durato meno di 2 secondi. Al termine del caricamento su S3, scrivere il bucket/chiave in un database.
Purtroppo non c'è altro modo per farlo.
Perché qualcuno dovrebbe votare questo? Puoi spiegare? Questo funziona per me! – coolcool1994
Votato perché questo post richiede specificamente S3 e S3 non è un'istanza ec2 normale, quindi non sta eseguendo un server SSH. È necessario utilizzare un protocollo HTTP per parlare con esso. – mianos
Suppongo che potresti attivare un'istanza EC2, usarla per eseguire la copia remota (server -> EC2 -> S3) quindi distruggere nuovamente l'istanza EC2. – Malvineous