[問題] 關於附加檔案 File Attachment Mod 的問題 [已解決]
發表於 : 2005-06-06 19:57

再發布文章的時候,附加檔案後,在檔名處可以看到原始的檔案名稱及路徑
但是發布之後就會變成download.php?id=的連結,不會顯示出原始的檔案名稱及路徑
有沒有辦法改成:

發布中:檔名(無法連結)

發布後:檔名(正常連結download.php?id=)
因為不想讓人直接看到檔案正確路徑,已確保檔案不會被非會員給下載
如有方法請告知,謝謝



如果說, 您的目的只是" 確保檔案不會被非會員給下載",sdlla 寫: 因為不想讓人直接看到檔案正確路徑,已確保檔案不會被非會員給下載
如有方法請告知,謝謝
這樣別人還是可以從檔案的原始位置下載心靈捕手 寫:如果說, 您的目的只是" 確保檔案不會被非會員給下載",sdlla 寫: 因為不想讓人直接看到檔案正確路徑,已確保檔案不會被非會員給下載
如有方法請告知,謝謝
那麼, 您只要在後台的-> 版面管理-> 權限設定-> 下載檔案-> 註冊會員 即可.
發文章的時候也只有本人看的到啊sdlla 寫:這樣別人還是可以從檔案的原始位置下載
例如我上傳的檔案是t004.gif,但是在圖1中的link位置,就是我檔案的原始位置\r
(圖1,在發布文章上傳檔案,它的link會把檔案的原始位置與檔名顯露)
http://www.psobb.org/files/t004_226.gif
別人就可以對檔案原始位置下載檔案,根本就防禦不了,謝謝
您可能是多慮了, 就我個人的使用經驗而言,sdlla 寫: 這樣別人還是可以從檔案的原始位置下載
例如我上傳的檔案是t004.gif,但是在圖1中的link位置,就是我檔案的原始位置\r
(圖1,在發布文章上傳檔案,它的link會把檔案的原始位置與檔名顯露)
http://www.psobb.org/files/t004_226.gif
別人就可以對檔案原始位置下載檔案,根本就防禦不了,謝謝
呃...我了解你的意思,但不是這樣的...(暈)心靈捕手 寫:您可能是多慮了, 就我個人的使用經驗而言,sdlla 寫: 這樣別人還是可以從檔案的原始位置下載
例如我上傳的檔案是t004.gif,但是在圖1中的link位置,就是我檔案的原始位置\r
(圖1,在發布文章上傳檔案,它的link會把檔案的原始位置與檔名顯露)
http://www.psobb.org/files/t004_226.gif
別人就可以對檔案原始位置下載檔案,根本就防禦不了,謝謝測試: 我將我的討論區的" 訪客留言版" 下載檔案的權限設定為" 註冊會員" 後,
- 檔案上傳後, 檔名會重新編碼; 連結" 路徑" 也就隨著更改;
- 一般訪客或註冊會員, 應該是沒有權限按" 編輯", 去觀看您貼出的連結的.
放了一個檔案" CSPY20B.EXE", 您可以試著去下載看看:
http://wang5555.dnsfor.me/phpbb2/viewtopic. ... 8994#28994
ps.
1. 我並沒有多做任何處理;
2. 您可以試著加入本討論區後, 順利下載它.
我了解您的顧慮, 可是您似乎並沒有真正了解我的意思!sdlla 寫: 呃...我了解你的意思,但不是這樣的...(暈)
流程:
發佈文章->附加檔案->t004.gif->附加完成->檔名的t004.gif連結中會顯示
真確位置:http://www.psobb.org/files/t004_226.gif
而這段連結位置不是在編輯中所產生的,而是在發佈文章中才會看見
我是想,連發佈者都不可以看見檔案的真確位置...
(因為有人利用這個上傳後,直接將這連結貼出來,讓就算是沒有會員的人一樣可以下載,就算我設定了註冊會員也是一樣...)
謝謝
我附加的檔案是t004.gif而不是t004_226.gif心靈捕手 寫:我了解您的顧慮, 可是您似乎並沒有真正了解我的意思!
依照您的說法, 那麼我在上頭放的檔案, 您是否可以按照底下的連結去下載呢?
http://wang5555.dnsfor.me/phpbb2/files/CSPY20B.EXE
( ps. 這個路徑是您所謂的" 真確位置")
答案是: 不可以的!
因為檔案上傳後, 檔名有異.
除非去翻 files 資料夾的檔案, 否則發表者, 又怎麼會知道重新編碼的檔名呢?
這是只要將這個檔案放進去就好了嘛?還是做其他的動作嘛?小西 寫:那麼你就加個.htaccess檔吧...
http://www.phpbb.com/phpBB/viewtopic.ph ... 476#697476
嗯,這個可以解決外部盜連的問,不過對於站內直接公佈Link還是會給非會員的人下載到\r小西 寫:他的意思是在你存放上傳圖片的資料夾裡新增一個.htaccess檔
把他下面寫的那一段copy到.htaccess檔裡面\r
記得要將your_domain.com改成你自己的網域名稱\r
至於下面的http://www.your_domain.com/whatever_image_you_want.gif
這個就貼的警告標語什麼的..並把網址改成你所要的圖片連結即可\r
(他的功用大概是所有用直接連結方式的人都會看到你指定的圖片)
\n
試試看吧
我已經完全了解您的意思了!sdlla 寫: 我附加的檔案是t004.gif而不是t004_226.gif
但是在Link中會顯示的是t004_226.gif,不是t004.gif
我也知道上傳過後的會異動,但是我上傳的檔案是t004.gif不是t004_226.gif
對方看到的Link是異動過後的,當然會知道真卻位置,
一般位置:http://www.psobb.org/files/t004.gif (不過這上傳過後異動)
真確位置http://www.psobb.org/files/t004_226.gif (這個才是真的檔案的位置)
可是Link上會顯示的是http://www.psobb.org/files/t004_226.gif
這樣就會被其他人給知道檔案的真確名稱與位置,謝謝
不過看posting,就算可以用掉那個link,但還是可以從原始碼可以從刪除及更新註解中看到檔案名稱,但只要不要讓對方知道File的位置在哪,因該還市沒辦法被直接下載的心靈捕手 寫:我已經完全了解您的意思了!sdlla 寫: 我附加的檔案是t004.gif而不是t004_226.gif
但是在Link中會顯示的是t004_226.gif,不是t004.gif
我也知道上傳過後的會異動,但是我上傳的檔案是t004.gif不是t004_226.gif
對方看到的Link是異動過後的,當然會知道真卻位置,
一般位置:http://www.psobb.org/files/t004.gif (不過這上傳過後異動)
真確位置http://www.psobb.org/files/t004_226.gif (這個才是真的檔案的位置)
可是Link上會顯示的是http://www.psobb.org/files/t004_226.gif
這樣就會被其他人給知道檔案的真確名稱與位置,謝謝
經過測試, 的確是會顯示檔案名稱異動後的連結.
這部分的問題, 應該可以從 attach_mod/posting_attachments.php 做些修改;
是看看能否在不影響檔案正常的下載下, 不顯示檔案名稱異動後的連結.
代碼: 選擇全部
#
#-----[ Open ]-----
#
templates/YOUR_THEME/posted_attachments_body.tpl
#
#-----[ Find ]-----\r
#
<span class="gen"> <a class="gen" href="{attach_row.U_VIEW_ATTACHMENT}" target="_blank">{attach_row.FILE_NAME}</a></span>
#
#-----[ Replace With ]-----
#
<span class="gen">{attach_row.FILE_NAME}</span>
的確...看來只有都不讓它顯示會比較安全...心靈捕手 寫:To sdlla:
修改 attach_mod/posting_attachments.php 這方面,
一直沒有獲得滿意的結果;
倒是修改 posted_attachments_body.tpl 可以很快獲得一些改善;
以下的修改, 提供您參考:如此一來, 將不會顯示檔案名稱異動後的連結路徑,代碼: 選擇全部
# #-----[ Open ]----- # templates/YOUR_THEME/posted_attachments_body.tpl # #-----[ Find ]----- # <span class="gen"> <a class="gen" href="{attach_row.U_VIEW_ATTACHMENT}" target="_blank">{attach_row.FILE_NAME}</a></span> # #-----[ Replace With ]----- # <span class="gen">{attach_row.FILE_NAME}</span>
而且不會影響檔案的正常下載.
ps. 抱歉! 程式碼有誤, 已經加以修正!