簡體   English   中英

PHP POST請求超時

[英]PHP POST requests timeout

我目前正在處理一個支持更大的上傳(〜50 Mb)的上傳腳本,並且很快遇到了問題! 我將傳統的POST請求與一種將文件上載到臨時位置的表單一起使用,然后使用PHP進行移動。 自然,我已經更新了php.ini文件,使其比默認文件和支持15 Mb上傳的文件要大得多!

主要問題是由於我的托管公司。 他們讓腳本在60秒后超時 ,這意味着花費超過60秒才能完成的POST請求將在臨時文件到達PHP腳本之前終止,這自然會產生內部服務器錯誤。

無法解決服務器上的超時問題(經過激烈的辯論之后),我正在考慮使用這些選項。 有沒有辦法取消請求或以某種方式刷新請求以通知服務器並重置計時? 還是有不超時的替代上傳方法?

您可以考慮幾件事。 每一種都有成本,因此您需要確定哪一種成本最低。

  1. 獲取一個新的托管公司。 這可能是您最好的解決方案。

  2. 設計一個相當復雜的客戶端系統,該系統將上載分成多個塊,並通過AJAX提交。 這特別丑陋,因為它僅在解決主機規則時有用。

我真的會研究#1。

好容易。 到目前為止,最簡單的選擇是轉儲堅硬的主機,然后選擇一個實際上可以提高您生產力的主機。 我個人使用TSOHost-與他們在一起已經一年半了,到目前為止,絕對沒有理由抱怨(甚至沒有一點煩惱)。

您真的確定這是超時問題嗎? 我的第一個主意

  • 由於Web服務器php.ini文件中設置了配置限制,傳輸失敗。 您需要在腳本中對其進行更改或將其設置為本地設置

    #在您的配置使用的php.ini中找到它。memory_limit = 96M post_max_size = 64M upload_max_filesize = 64M

或者直接在您的腳本中

ini_set('memory_limit', '96M'); 
ini_set('post_max_size', '64M'); 
ini_set('upload_max_filesize', '64M');

暫無
暫無

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

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