Пакет Visual Studio NuGet необходимо обновить для новой версии набора инструментов
У меня просто возникла проблема с подключением libpng с Visual Studio 2013. Проблема в том, что в файле пакета были только библиотеки для Visual Studio 2010 и 2012.
Правильное решение - надеяться, что разработчик выпустит обновленный пакет и затем обновит его, но он работал для меня, взломав дополнительную настройку для VS2013, указав на файлы библиотеки VS2012.
Я отредактировал пакет (в папке packages
внутри каталога решения), найдя packagename\build\native\packagename.targets
и внутри этого файла, скопировав все секции v110
. Я изменил v110
на v120
в полях условий только очень осторожно, чтобы пути с именами файлов были все как v110
. Это просто позволило Visual Studio 2013 подключиться к библиотекам на 2012 год, и в этом случае он работал.
Обычно, если вы отправляете выходные данные, этого не происходит: если веб-сервер обнаруживает отключение, процесс PHP также останавливается (поэтому у нас есть функции, такие как register_shutdown_function
, чтобы сделать уверенным что-то сделано (конечно, вы случайно сталкиваетесь с фатальной ошибкой)).
Однако, поскольку HTTP является апатридом, единственный момент времени, когда веб-сервер обнаружит разрыв, - это когда он пытается отправить контент (см. также замечания в ignore_user_abort
(по умолчанию это ложь, это то, что вы хотите)). В зависимости от контекста запроса работоспособный kludge может быть в больших циклах для отправки не отображаемых данных пользователю, в HTML, который может быть отправлен в пробелы и flush
. Это может оказаться в любом буфере, хотя (PHP, серверы, другие места в сети), поэтому обнаружение по-прежнему не на 100%, но это неизбежно. Правильный лимит времени, чтобы избежать бесконечного цикла, и только увеличение этого предела для запросов, которые на самом деле нуждаются в , - это лучшее, что вы можете сделать.
Закрытие браузера не убивает запущенный процесс. Если вы хотите остановить фоновый процесс, вам придется убить процесс.
Если вы используете окна, вы можете перезапустить apache с помощью диспетчера служб Apache или убить его с помощью диспетчера задач.
Проверьте, установлен ли ignore_user_abort (true) в любом месте скрипта. Или если существует директива ignore_user_abort php_value, установленная в .htaccess
использовать в вашем скрипте (если прошло какое-то время)
die();