我想用PHP構建電子商務網站,我將使用omnipay庫進行支付。問題是如果用戶可以在他的瀏覽器中寫入URL和付費程序將下載.....我搜索瞭如何阻止用戶下載像RewriteEngine文件,但如果用戶在這種情況下付費,我怎麼能讓文件下載?我怎樣才能阻止用戶下載支付程序與付出
0
A
回答
1
也許你可以試試這些:在散列格式
- 商店中的程序名,所以不是
www.mywebsite.com/programs/paint.exe
也許在這樣的www.mywebsite.com/programs/ca63ff966ff272da14e4fc2e73fcd399
更好。您至少已將付費程序存儲在表中,並且該表應提供其哈希格式名稱列。 www.mywebsite.com/programs/paint.exe
此網址應該且只能由經過身份驗證的用戶訪問。如果它已經通過身份驗證的用戶,則檢查此用戶的購買歷史記錄,如果他/她曾購買此paint.exe
計劃,如果沒有購買記錄,則必須將他/她重定向到您的付款頁面。
0
除了使用散列文件名作爲彼得提到的,你可以使用PHP來認證後提供文件。
創建一個htaccess重寫來發送文件的任何請求直接到一個PHP腳本。在php腳本中,執行一些驗證(I.E.有用戶登錄,或讓他們使用設置會話變量的安全鏈接等)。然後,如果用戶認證成功,使用PHP返回使用http標頭的文件。
header('Content-Type: application/x-msdownload'); // Set this to a .exe
header('Content-Disposition: attachment; filename="paint.exe"'); // Set the filename to download.
$downloadFile = file_get_contents('programs/hashedpaintexename.exe');
echo $downloadFile;
注意:您將要確保你應該使用哈希文件名,你會希望你的htaccess處理這些散列的文件。
另一種選擇是,如果你已經控制了服務器,那麼你可以讓PHP從網站目錄之外加載文件,而不是使用htaccess重寫。例如,如果您的網站目錄是/var/www/mywebsite
,請讓php從/whatever/path/you/want
加載可執行文件,前提是php具有對目錄的讀取權限。
相關問題
- 1. 阻止支付寶付款的國家
- 2. 我怎樣才能阻止我的python程序崩潰
- 3. 我怎樣才能阻止dialoges
- 4. 我怎樣才能阻止網站?
- 5. 我怎樣才能阻止我的AsyncTask線程。或停止chatmanager
- 6. 我怎樣才能下載使用C++
- 7. 我怎樣才能讓我的註冊腳本支票付款確認
- 8. ¿我怎樣才能阻止我的數字序列增長?
- 9. 我需要爲github賬戶付款才能下載Tapku Library嗎?
- 10. Tab鍵給出麻煩。我怎樣才能阻止這
- 11. 我怎樣才能打開彈出窗口,而不被阻止?
- 12. 我怎樣才能阻止我的迅速應用程序崩潰
- 13. 我怎樣才能阻止許多影片剪輯與環
- 14. 我怎樣才能阻止線程中的塊方法DatagramSocket.receive()
- 15. 通過PayPal支付應用程序才能使用它。
- 16. 下載前支付寶功能
- 17. FB.getLoginStatus觸發瀏覽器彈出窗口阻止程序。我怎樣才能阻止它?
- 18. 支付iOS應用程序
- 19. 電子商務支付 - 我如何支付用戶?
- 20. 預付款的嵌入式支付流程中的客戶支付支持
- 21. PayPal支付:讓我使用PayPal支付付款成功
- 22. 我怎樣才能到我的用戶
- 23. 如何支付我的網站用戶與PayPal API(支付寶替代)
- 24. PayPal API是否支持用戶在我的應用上支付用戶付款?
- 25. 買方支付應用程序的PHP支付網關集成
- 26. 我怎樣才能在Java程序
- 27. svnserve是允許匿名用戶。我怎樣才能阻止他們?
- 28. 我怎樣才能阻止一些特殊的用戶代理通過IPTables
- 29. 下載(支付)的內容到Android應用程序
- 30. 萬能支付與蛋糕php 2.0支付
謝謝你,謝謝D.R –