簡體   English   中英

Apache和PHP下載超時

[英]Timeouts on Apache and PHP downloads

我經營一個網站,為醫生銷售音頻下載。 目前,當客戶購買播客時,會向他/她顯示直接的HTML鏈接以開始下載。 該鏈接指向一個ZIP文件,該文件的大小可以為1Gb。 我要問的一個問題是,當Apache服務器可能有幾分鍾的超時時間時,為什么下載可以成功運行幾個小時? 我認為此超時是針對服務器處理GET請求並將結果輸出通過輸出緩沖區發送到瀏覽器的。 也許沒有超時時間可以將緩沖區發送給用戶。 我對么?

我的第二個問題是關於PHP超時。 我不喜歡指向下載的HTML直接鏈接,就像其他用戶可以免費下載該URL一樣。 一種解決方案是使用PHP腳本來發送下載文件,方法是發送適當的標頭,然后發送預加載了下載數據的變量的“回顯”。 我的問題是php.ini文件中的超時是否會影響下載。 通常需要30秒才能完成腳本。 那么,腳本在下載過程中運行嗎? 或者,腳本是否可以快速完成並將下載數據放入PHP輸出緩沖區。 如果是后者,則是否有超時將緩沖區清空?

我想我必須為php.ini中的'memory_limit'設置一個較大的值(默認為128Mb),以允許1Gb下載的大小。

嘗試設置更大的流超時PHP STREAM TIMEOUT 您可以使用phpinfo查看默認值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM