Недавно мы обновили нашу веб-среду до PHP до 7.3.11. Правильно настроенные драйверы и параметры SQL Server для IIS и SQL Server 2104 (12.0.5687.1). Протестировал систему и все заработало нормально. И IIS, и SQL Server находятся на Windows Server 2012 R2. Мы находимся в размещенной среде на виртуальных машинах.
Все работает нормально, и система работала почти неделю без инцидентов. За ночь мы неожиданно начали получать следующую ошибку - [Microsoft] [Драйвер ODBC 17 для SQL Server] Шифрование не поддерживается на клиенте. Эта ошибка длилась около 70 с лишним минут поздно ночью и внезапно исправлялась без какого-либо вмешательства. Журналы системы и ошибок ничего не дают ни на одной машине. Мы добавили систему оповещения, чтобы обнаруживать, фиксировать и сообщать нам о происшествиях. Три дня проходят без происшествий, и этим утром это снова начало происходить.
Мы можем временно вернуться к более старой версии PHP, которая отлично работает.
Почему он работает в течение длительного периода времени, внезапно завершается неудачей, а затем просто внезапно исправляется.
Я включил дополнительные журналы и трассировку) PHP, IIS и MSSQl), но нетИнформация появилась с последним появлением.
Фактическая ошибка возникает при вызове sqlsrv_connect () базы данных из PHP / IIS. Все параметры настроены правильно. ПРИМЕЧАНИЕ. Мы используем объект JSON для передачи этих настроек. Все это работает по несколько дней, поэтому я подозреваю, что влияние извне, но понятия не имею, что это может быть. Ниже приведена строка кода, которая дает сбой.
$this->db = sqlsrv_connect( $arrDB["Server"], $arrDB["Options"] );
Мне нужно получить эту стабильную версию 7.3.11 для наилучшей практики безопасности. Любое руководство или помощь с благодарностью.