Тайм-аут запросов Apache, PHP, HTTP POST через 60 секунд (только при подключении на основе 3G!)

Я уверен, что мне не хватает только строки конфигурации, но я просто не могу понять, какая из них.

Мой основной скрипт PHP:

<?php
  header('Content-Type: text/html; charset=utf-8');
?>
<!DOCTYPE html>
<html>
  <head>
    <title>Secure Login: Log In</title>
    <link rel="stylesheet" href="styles/main.css" />
    <script type="text/JavaScript" src="js/sha512.js"></script> 
    <script type="text/JavaScript" src="js/forms.js"></script> 
  </head>
<body> 
    <form action="tester.php" method="post" name="login_form" accept-charset="utf-8">
        Command: <input type="text" name="command" />  
        <input type="hidden" value="2016-10-14" name="date">
        <input type="submit" value="Send Comamnd" />
    </form>
</body>
</html>

который в основном отправляет запрос POST в другой PHP-скрипт с именем tester.php:

<?php
  sleep (70);    // Sleep 70 seconds, just to go beyond 60 seconds 
  echo "Done!";
?>

Мой php.ini имеет следующие директивы:

max_execution_time = 400
max_input_time = 180
default_socket_timeout = 180
mysql.connect_timeout = 190
session.gc_maxlifetime = 1440
mssql.connect_timeout = 500
mssql.timeout = 600

Мой http.conf имеет:

Timeout 216000
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 0

Как вы видите, я установил все связанные значения тайм-аута для PHP и Apache, но все равно получаю это в Firefox ровно через 60 секунд: "Соединение с сервером было сброшено во время загрузки страницы".

И если я отправляю запрос через OkHttp3 (в качестве службы REST) ​​в Android, я получаю: "D/OkHttp: <- HTTP FAILED: java.io.IOException: неожиданный конец потока на okhttp3.Address" через 60 секунд.

Почему я не могу увеличить время ожидания? (Кстати, пожалуйста, не советуйте оптимизировать мой скрипт, я просто хочу узнать решение, которое позволяет мне запускать мой скрипт PHP более 60 секунд.)

ОБНОВЛЕНИЕ 1:

Я проследил поведение до этого момента: 60-секундный таймаут появляется только при использовании широкополосного соединения 3G. Так странно. Я полагаю, что в этом 3G-соединении должно быть аппаратное обеспечение, маршрутизатор или что-то, что сбрасывает запрос POST. Как я могу узнать, что это такое и как это предотвратить?

0 ответов

Другие вопросы по тегам