我有一个 Web 应用程序正在服务器端处理一些数据。我使用 post 请求来请求此过程。
问题是,如果我有大量数据,就会超时。我正在使用带有 PHP 的 ngnix 服务器。
我收到的错误是 404 Not Found。
您知道如何增加超时时间吗?
谢谢。
答案1
PHP
要增加 PHP 执行超时,请增加 php.ini。要查看 php.ini 的位置,请参阅 phpinfo()。
max_execution_time = 60 #this is in seconds
nginx
要增加 nginx 从后端读取的超时时间,请增加 nginx 配置(nginx/nginx.conf)。
proxy_read_timeout 60
更多的:http://wiki.nginx.org/HttpProxyModule#proxy_read_timeout
卷曲
这是一个假设,但是由于您说您正在发出 POST 请求,因此增加 cURL 超时
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT ,0);
curl_setopt($ch, CURLOPT_TIMEOUT, 400); //timeout in seconds
更多的:http://www.php.net/manual/en/function.curl-setopt.php
杂项
请务必在设置超时时考虑优先级。即使 nginx 决定停止监听,PHP 仍将继续处理。等等。