, если у вас есть длинный код сервера на стороне сервера, я не думаю, что он попадает в 404, как вы сказали («он попадает на страницу с веб-страницей, не найденной»)
Браузер должен сообщить запрос
Вы можете сделать 2 вещи:
Исходя из времени ожидания увеличения количества движков CGI / Server
PHP: http: // www .php.net / manual / en / info.configuration.php # ini.max-execute-time - по умолчанию 30 секунд
В php.ini:
max_execution_time 60
Увеличьте время ожидания apache
http://httpd.apache.org/docs/2.0/mod/core.html#timeout - по умолчанию 300
В вашем httpd.conf (в конфигурации сервера или конфигурации vhost)
TimeOut 600
Обратите внимание, что первый параметр позволяет вашему скрипту PHP работать дольше, он не будет мешать сетевому таймауту .
Вторая настройка изменяет максимальное время, в течение которого сервер будет ожидать определенные события перед сбоем запроса
Извините, я не уверен, что вы используете PHP в качестве обработки на стороне сервера, но если вы предоставите больше информации, я быть более точным.
Здесь:
using (var bus = EasyNetQ.RabbitHutch.CreateBus("host=localhost"))
{
bus.Subscribe<Entity>("entity", Handler);
}
код удаляет соединение с EasyNetQ сразу после подписки, что приведет к отключению и прекращению подписки снова. Согласно документации EasyNetQ :
Стандартной практикой является создание одного экземпляра IBus на весь срок службы вашего приложения. Утилизируйте его, когда ваше приложение закрывается.
blockquote>В этом случае вы, вероятно, захотите связать жизненный цикл шины EasyNetQ с сервисом, который запускается или останавливается через TopShelf. Итак:
private IBus bus; public void Start() { bus = EasyNetQ.RabbitHutch.CreateBus("host=localhost")); bus.Subscribe<Entity>("entity", Handler); } public void Stop() { bus?.Dispose(); bus = null; }