2011年8月4日 星期四

讓任何人可以上傳任何檔案到你的Dropbox

其實方法蠻多種的,最快速的方法是透過jotform,作法請參考這篇 軟體玩家:讓別人也能把檔案輕鬆上傳到你的Dropbox空間!
jotform的方法其實非常的棒,也非常快速,不過缺點就是不支援中文,不管是中文檔名還是中文的描述,都有問題,中文檔名不會被傳送,而中文描述則會變成亂碼,於是我又找到另外一種方法,不過這個方法麻煩多了,你得要有SERVER才能用,因為他是PHP的網頁型式,優點當然就是完全可以自訂,這個網頁程式碼你可以隨便改成你喜歡的樣子,而且檔案上傳也完全沒有中文的問題,你可以到這裡下載程式碼,然後解縮到你的web server上,或者你也可以下指令:

wget "http://www.ampercent.com/downloads/dupass.rar"
rar x dupass.rar

然後你的server必須要有php5和curl,目前的ubuntu都有php5了所以你只需要再安裝curl就可以了
sudo apt-get install curl libcurl3 libcurl3-dev php5-curl

安裝完以後接下來就是修改dupass的文件內文了
  1. 用你習慣的HTML編輯器打開 Index.php
  2. 到27行輸入網頁的上傳密碼,不是dropbox的密碼,你可以把這個密碼給你的朋友,讓他們可以上傳檔案給你
  3. 到52行輸入你Dropbox的帳號密碼
  4. 到75行輸入你Dropbox的要給大家上傳檔案的資料夾名稱,預設是shared
  5. 如果你還沒上傳檔案到server記得存檔後上傳檔案
到這邊就快完成了,接下來要調整Server上的php.ini
  1. 找到/etc/php5/apache2/php.ini
  2. 修改 post_max_size = 300M
  3. 修改 upload_max_filesize = 300M
因為目前dropbox支援網站上傳的檔案最大為300M,超過300MB的檔案Dropbox是不會收的,不過如果在本機,透過dropbox的程式上傳則沒有檔案大小的限制。
OK,接下來就把Service restart就OK了!
sudo service apache2 restart

完成的樣子就是這樣
本來還想在網頁上加上進度Bar (progress bar),不過官方的API似乎沒有支援,所以就.....Orz....

參考來源1:利用dropbox制作网络共享硬盘
參考來源2:http://ampercent.com/projects/du/
參考來源3:Increase upload size in your php.ini
參考來源4:progress bar
參考來源5:linux下给php安装curl、gd(ubuntu)