作者 主題: 請問隱藏路徑~~  (閱讀 15945 次)

0 會員 與 1 訪客 正在閱讀本文。

wilson

  • 俺是博士!
  • *****
  • 文章數: 1821
  • 帥氣柴老大
    • 檢視個人資料
請問隱藏路徑~~
« 於: 2003-08-16 11:40 »
請問要如何做到不讓使用者知道他所下載的檔案之路徑??
也就是說~~他按了該LINK後就會下載某檔案  但又看不到該檔案的真實路徑
可行嗎??
謝謝

peiga

  • 憂鬱的高中生
  • ***
  • 文章數: 117
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #1 於: 2003-08-16 11:41 »
可以舉個例來瞧瞧嗎?

wilson

  • 俺是博士!
  • *****
  • 文章數: 1821
  • 帥氣柴老大
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #2 於: 2003-08-16 11:47 »
例如說~~
我網頁上有一個LINK~~按下去之後可以下載一個檔案~~
而這個檔案是放在另一台機器上的~~
我不想讓使用者知道檔案是從另一台機器來的~~
這樣可行嗎??
謝謝

gol4302

  • 憂鬱的高中生
  • ***
  • 文章數: 100
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #3 於: 2003-08-16 15:02 »
使用 php 指令 , header
配合其他讀檔的指令 如 fopen 等指令
作法 : 利用 hrader 製造下載的檔頭 ,再用 fopen 等指令至正確檔案的位置讀檔再用 echo 來輸出即可

檔頭的作法
header(  "Expires: 0" );
header(  "Content-Type: application/save-as" );
header(  "Content-Disposition: attachment; filename=xxxx.zip");
header(  "Content-Length:  1234" );

wilson

  • 俺是博士!
  • *****
  • 文章數: 1821
  • 帥氣柴老大
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #4 於: 2003-08-16 15:13 »
嗯~~感謝回應`~
我去試試看~~

wilson

  • 俺是博士!
  • *****
  • 文章數: 1821
  • 帥氣柴老大
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #5 於: 2003-08-16 17:32 »
試不出來`~~~:-?

請問gol4302兄~~您說用fopen來讀~~在echo出來~~
是不是要echo "<a href="url">url</a>";這樣的東西呢??
可是這樣url就被看到了~~
(我用fopen會出現錯誤耶~~)
底下內容~~請指教~~~

test.php
--------------------------
$file="http://abc.com.tw/03.mp3";
header( "Expires: 0" );
header( "Content-Type: application/save-as" );
header( "Content-Disposition: attachment; filename=$flie");
header( "Content-Length: 1234" );
readfile($file);
--------------------------

如果$file是test.txt它會下載別台機器上(http://abc.com.tw/test.tx)的內容
可是儲存檔名為test.php

如果是$file是03.mp3    那它也會下載一檔名為test.php的檔~~但內容就不是03.mp3了~~

請問應該怎樣才能讓它下載的檔名為test.txt或03.mp3並且內容是正確的呢??

wilson

  • 俺是博士!
  • *****
  • 文章數: 1821
  • 帥氣柴老大
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #6 於: 2003-08-16 21:18 »
有人提到用COPY的方式把遠端的來源檔COPY到機器上並改成統一的檔名~~
這是一個辦法~~但是好像會吃掉不少資源吧
不知道有沒有更好的方法呢??

gol4302

  • 憂鬱的高中生
  • ***
  • 文章數: 100
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #7 於: 2003-08-18 22:11 »
引述: "wilson"
試不出來`~~~:-?

test.php
--------------------------
$file="http://abc.com.tw/03.mp3";
header( "Expires: 0" );
header( "Content-Type: application/save-as" );
header( "Content-Disposition: attachment; filename=$flie");
header( "Content-Length: 1234" );
readfile($file);
--------------------------

如果$file是test.txt它會下載別台機器上(http://abc.com.tw/test.tx)的內容
可是儲存檔名為test.php

如果是$file是03.mp3    那它也會下載一檔名為test.php的檔~~但內容就不是03.mp3了~~

請問應該怎樣才能讓它下載的檔名為test.txt或03.mp3並且內容是正確的呢??


把它改成
$file="http://abc.com.tw/03.mp3";
$fn="03.mp3";
$filesize=1234;   // 假設03.mp3 長度為 1234
header( "Expires: 0" );
header( "Content-Type: application/save-as" );
header( "Content-Disposition: attachment; filename=".$fn);
header( "Content-Length: ".$filesize );
readfile($file);


其實重點是在 $fn 與 $filesize
至於你使用 readfile 去讀檔如何在 "讀" 之前知道 size 我就不知了

wilson

  • 俺是博士!
  • *****
  • 文章數: 1821
  • 帥氣柴老大
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #8 於: 2003-08-19 00:15 »
謝謝gol4302兄~~ :P   成功了~~原來一直是我忽略掉filesize
謝謝大家的回應~~

wilson

  • 俺是博士!
  • *****
  • 文章數: 1821
  • 帥氣柴老大
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #9 於: 2003-08-19 00:20 »
對了~~~這邊有一個例子
http://toget.pchome.com.tw/intro/network_transfer/network_transfer_download/5701_dl.html

請看到"toget"這個下載連結    如下:
http://toget.pchome.com.tw/adm/member.php?Rmxvd19ubz01NzAxJlNvZnRfdXJsPWh0dHA6Ly9jb29sZmlsZXMudG9nZXQuY29tLnR3L2Z0cC9mZzE0MHR3LmV4ZQ==

這樣一長串的東西像是編碼過的耶  不知道是用何方式達成的呢??
你一定要直接在他們的網頁上點選他才可以下載耶
如果複制上面那一串到URL上去貼~~則不能下載
這就做到不讓人家看到路徑的目的了   :P

duan

  • 榮譽博士
  • 活潑的大學生
  • ***
  • 文章數: 253
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #10 於: 2003-08-19 00:43 »
引述: "wilson"
對了~~~這邊有一個例子
http://toget.pchome.com.tw/intro/network_transfer/network_transfer_download/5701_dl.html

請看到"toget"這個下載連結    如下:
http://toget.pchome.com.tw/adm/member.php?Rmxvd19ubz01NzAxJlNvZnRfdXJsPWh0dHA6Ly9jb29sZmlsZXMudG9nZXQuY29tLnR3L2Z0cC9mZzE0MHR3LmV4ZQ==

這樣一長串的東西像是編碼過的耶  不知道是用何方式達成的呢??
你一定要直接在他們的網頁上點選他才可以下載耶
如果複制上面那一串到URL上去貼~~則不能下載
這就做到不讓人家看到路徑的目的了   :P


關於加密的部份, 簡單點可以用 gpg 來處理.
至於用 copy 網址不行, 那可能只是檢查 http_referer 的變數, 只是說 "可能" .
要確認它是用什麼方式檢查, 可以查看正常瀏覽時, 所丟出的 header , 然後手動
丟一次 header 看看是否還能下載.   :)

wilson

  • 俺是博士!
  • *****
  • 文章數: 1821
  • 帥氣柴老大
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #11 於: 2003-08-19 00:51 »
嗯~~~感謝duan學長回應~~
對了  說到抓header  
duan學長上次您在一篇文章中提到Mozilla有個抓header的plugin
http://livehttpheaders.mozdev.org/

這個~~我找不到download的點耶~~ :oops:

gol4302

  • 憂鬱的高中生
  • ***
  • 文章數: 100
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #12 於: 2003-08-19 12:17 »
引述: "wilson"
對了~~~這邊有一個例子
http://toget.pchome.com.tw/intro/network_transfer/network_transfer_download/5701_dl.html

請看到"toget"這個下載連結    如下:
http://toget.pchome.com.tw/adm/member.php?Rmxvd19ubz01NzAxJlNvZnRfdXJsPWh0dHA6Ly9jb29sZmlsZXMudG9nZXQuY29tLnR3L2Z0cC9mZzE0MHR3LmV4ZQ==

這樣一長串的東西像是編碼過的耶  不知道是用何方式達成的呢??
你一定要直接在他們的網頁上點選他才可以下載耶
如果複制上面那一串到URL上去貼~~則不能下載
這就做到不讓人家看到路徑的目的了   :P


不過它的方式還是可以看到實際下載點呀 http://coolfiles.toget.com.tw/ftp/fg140tw.exe


header ("Location: http://coolfiles.toget.com.tw/ftp/fg140tw.exe")

應該會達到類似的方式 ,當然加上 session 等機制就可以達到非由某些頁面連結才可執行的目的

wilson

  • 俺是博士!
  • *****
  • 文章數: 1821
  • 帥氣柴老大
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #13 於: 2003-08-19 13:58 »
gol4302兄
請問您是如何知道實際下載點的??

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4052
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
請問隱藏路徑~~
« 回覆 #14 於: 2003-08-19 14:09 »
引述: "wilson"
gol4302兄
請問您是如何知道實際下載點的??


使用 Opera 即可輕鬆破解!

捨棄 ie 你會看到更寬廣的世界,不要再當一個網路上的“井底之蛙”了!
換掉你的瀏覽器吧!
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

gol4302

  • 憂鬱的高中生
  • ***
  • 文章數: 100
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #15 於: 2003-08-19 14:14 »
用 Mozilla 它出現的下載視窗就可以看出來

gol4302

  • 憂鬱的高中生
  • ***
  • 文章數: 100
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #16 於: 2003-08-19 14:27 »
引述: "wilson"
嗯~~~感謝duan學長回應~~
對了  說到抓header  
duan學長上次您在一篇文章中提到Mozilla有個抓header的plugin
http://livehttpheaders.mozdev.org/

這個~~我找不到download的點耶~~ :oops:

上了 http://livehttpheaders.mozdev.org 後選 第一行的 "Installation"
若用 Mozillz 瀏覽點選下面的 Install ver.......
即可安裝

安裝好後 檢視->網頁資訊 就會多一組 Headers 的標籤

wilson

  • 俺是博士!
  • *****
  • 文章數: 1821
  • 帥氣柴老大
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #17 於: 2003-08-19 15:58 »
引述: "gol4302"
引述: "wilson"
嗯~~~感謝duan學長回應~~
對了  說到抓header  
duan學長上次您在一篇文章中提到Mozilla有個抓header的plugin
http://livehttpheaders.mozdev.org/

這個~~我找不到download的點耶~~ :oops:

上了 http://livehttpheaders.mozdev.org 後選 第一行的 "Installation"
若用 Mozillz 瀏覽點選下面的 Install ver.......
即可安裝

安裝好後 檢視->網頁資訊 就會多一組 Headers 的標籤


謝謝  OK了~~ :P (原來是這樣  我還笨笨的以為要像裝Windows的東西樣呢 :oops: )

另外~~
引述: "gol4302"
用 Mozilla 它出現的下載視窗就可以看出來


剛剛仔細看了一下~~IE的下載視窗也會出現來源網址

wilson

  • 俺是博士!
  • *****
  • 文章數: 1821
  • 帥氣柴老大
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #18 於: 2003-08-19 17:00 »
剛剛用Mozilla去測試用PHP的 header功能下載檔案
發現從下載視窗和View Header的視窗都看不到我的來源路徑
想請大家幫忙測試一下
http://powen.idv.tw/test.php
這個連結會去下載一個mp3    大家試試看能不能看到來源網址
謝謝

wilson

  • 俺是博士!
  • *****
  • 文章數: 1821
  • 帥氣柴老大
    • 檢視個人資料
請問隱藏路徑~~
« 回覆 #19 於: 2003-08-19 17:55 »
對了    忘記一件事
hoyo學長  不知道能不能用你的Opera 幫我測試一下呢
謝謝 :P