推 shadowjohn: 我會比較建議你用外部指令做 :D 05/07 15:42
→ shadowjohn: 直接上傳 binary ,權限改一下 +x 直接呼叫 05/07 15:43
→ shadowjohn: rar、zip都有 static 版本,ok的 05/07 15:43
→ banana2014: 請問外部指令… 怎麼做? 我是租虛擬主機的… 05/07 17:23
<?php
echo system("rar a test.rar data"); //將data資料夾壓縮成test.rar,但沒反應
echo system("rar e k.rar"); //將k.rar解壓縮,這行依舊沒反應
?>
我照你的方法用外部指令去做,但是都沒反應耶,是不是哪裡出錯了? 或是還要必須再安裝什麼呢?
謝謝指教!
※ 編輯: banana2014 (219.80.129.121), 05/07/2015 17:58:50
→ MOONRAKER: (1)查你的主機有沒有開system()或exec() 05/07 18:18
→ MOONRAKER: (2)確定rar在哪裡 養成使用完整路徑習慣 05/07 18:19
→ banana2014: (1)怎麼查? 05/07 18:45
→ banana2014: (2)已經確定rar放在哪裡了,也寫了完整的路徑了,但依 05/07 18:46
→ banana2014: 舊無反應... 05/07 18:47
→ KawasumiMai: 之前有包過zip,rar倒是沒包過 05/07 19:16
→ MOONRAKER: 問你的主機公司啊 怎麼查咧 05/07 20:00
推 bcawosxy: 撈LOG出來看最準咧 05/07 21:43
推 shadowjohn: 我想你是用網頁去跑的對吧? 05/07 22:10
→ shadowjohn: 請建一個777的目錄,把rar檔往那個空間擺 05/07 22:11
→ shadowjohn: 例: mkdir("tmp",0777); 05/07 22:11
→ shadowjohn: 絕對路徑/rar ??? tmp/test.rar data 05/07 22:12
→ shadowjohn: 你的 rar 檔,也要設 chmod +x 才行 05/07 22:12
推 shadowjohn: 跑外部指令的話, echo `.../rar a.rar data`; 05/07 22:16
→ shadowjohn: 通常我會下 `cd xxxxx && ./rar ?? tmp/a.rar data`; 05/07 22:17
→ poiuy999: 2年前做過zip解壓縮的 java applet的zip 解壓縮後產生ht 05/07 23:17
→ poiuy999: ml檔展示applet 05/07 23:17
→ MOONRAKER: 呼叫java好像也是一個方法 前提是有system/exec好用 05/08 10:34
推 alog: 記得對command line 做跳脫 05/09 01:38
→ alog: 指令 05/09 01:38
→ alog: 不然會被injection 系統很容易出事 05/09 01:38