В разработанном мной программном обеспечении пользователь может отправить файл XLS, который PHP использует для вставки строк в базу данных. Обычно один файл имеет 1500 строк и приводит к 7000 строк в базе данных. Процесс обычно занимает от 5 до 7 минут.Пользовательская страница 504 не работает
После некоторого времени я получаю сообщение об ошибке 504 Gateway Time-out. Я провел исследование и выяснил, что решение заключается в увеличении максимального времени выполнения. Я пробовал это и ничего, это похоже на то, что конфигурация игнорируется.
max_execution_time = 600
max_input_time = 600
Затем я попытался установить это непосредственно на PHP, используя функции ignore_user_abort
и set_time_limit
. Опять же, это не сработало.
set_time_limit(0); //never time out
ignore_user_abort(true); //ignore abort
После этого я сдался и решил сделать страницу ошибки, чтобы объяснить, почему произошла ошибка, а затем перенаправить обратно на панель управления. Итак, я пошел к своему .htaccess, которые имеют следующее содержание:
# Turn on the RewriteEngine
RewriteEngine On
Options +FollowSymLinks +Includes
Options -Indexes
IndexIgnore */*
# Rules
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule . index.php?/$0 [L]
И добавил следующее заявление:
ErrorDocument 504 http://domain/erros/timeout/
Когда ошибка возникает снова, вместо того, чтобы перенаправлять к URL, он показывает страница ошибки по умолчанию.
UPDATE
Я использую Dreamhost общий хостинг.
То же самое происходит с использованием локальной страницы, внешний URL или непосредственно текст : – LucasFerreira
попробуйте очистить ваш .htaccess только с помощью строки ErrorDocument, что происходит? – Jcchemin
То же самое происходит – LucasFerreira