Наше приложение построено с использованием Laravel на сервере и Angular на интерфейсе. Проблема, с которой мы сталкиваемся в настоящее время, возникла сразу после того, как мы изменили нашу SSL-сертификацию, и, похоже, не влияет на приложение Android, что заставляет меня думать, что это ошибка внешнего интерфейса, а не внутреннего интерфейса. Наши журналы показывают ошибку SSL при использовании приложения и отправке запросов POST, приложение выдает 500 внутренних ошибок сервера и ошибку CORS.
Это из наших журналов:
[2019-07-08 07:35:02] local.ERROR: stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages:
error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed {"exception":"[object] (ErrorException(code: 0): stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages:
error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed at /var/www/html/backend/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/StreamBuffer.php:94)
Это из консоли при использовании приложения:
/quiz/40/student/392/attempt/29170:1 Access to XMLHttpRequest at 'https://backend.dotandlinelearning.com/public/api/quiz/updateSpentTimeQuizAttempt' from origin 'https://app.dotandlinelearning.com' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
В нашем приложении не было ошибки CORS до того, как это произошло.
Мне нужна помощь, чтобы выяснить, что может быть источником ошибки или что я мог бы попытаться исправить.
Я уже изучил сертификат SSL, и приложение показывает, что оно настроено правильно.
Наши cors настроены так:
'allowedOrigins' => ['*'],
'allowedOriginsPatterns' => [],
'allowedHeaders' => ['*'],
'allowedMethods' => ['*'],
'exposedHeaders' => [],
'maxAge' => 0,
Приложение также, похоже, выдает ошибку, но также выполняет функцию в фоновом режиме, фактически не показывая, что это было сделано. Поэтому, когда учитель создает ученика и нажимает кнопку «Добавить», ученик создается в базе данных, но учителю кажется, что он не был создан, потому что сообщение об успехе не отображается, а форма остается такой же.