我有一個ssh服務器用於在線存儲我的文件。我需要使這些文件可以輕鬆下載,所以我使用paramiko庫連接到ssh服務器(從我的python腳本),然後列出文件並顯示在網頁上。問題是我不想將文件下載到Web服務器的磁盤(沒有足夠的空間),然後將它們發送給客戶端,而不是像讀取文件一樣,並吐出它像它可以在PHP中完成。將文件從ssh服務器直接傳輸到客戶端
這樣的事情在python
<?php
// your file to upload
$file = '2007_SalaryReport.pdf';
header("Expires: 0");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Content-type: application/pdf");
// tell file size
header('Content-length: '.filesize($file));
// set file name
header('Content-disposition: attachment; filename='.basename($file));
readfile($file);
// Exit script. So that no useless data is output-ed.
exit;
?>
答案取決於您使用的Web框架。 Python有不同的API的幾個不同的Web framkeworks。 – rocksportrocker
我目前正在嘗試普通的CGI腳本,但我已經開放給webapp2,web.py和Django .. – voldyman