На нашем веб-сервере запущена система OpenClinica . Он настроен для работы на https://www.ourdomain.com/OpenClinica/. Поскольку наш сервер защищен с помощью SSL, мы также настроили перенаправление Apache для пересылки всех http-соединений в версию https. Следует отметить, что все работало нормально до (казалось бы) самых последних обновлений Firefox и Chrome. За последние несколько недель мы не изменили любые конфигурации серверов, которые могут быть источником ошибки.
Новая проблема заключается в том, что после входа в систему любые ссылки, по которым щелкают (показать все предметы исследования, что-либо управляют, ...), могут снова привести вас на страницу входа. Я говорю «скорее всего», потому что нет видимого шаблона - иногда ссылки не будут доступны без перехода на страницу входа в систему, иногда пользователь может перемещаться по двум или трем меню до того, как его выбросят.
Поведение также не одинаково для всех браузеров и компьютеров (несмотря на проверку того, что все тестируемые компьютеры имеют одинаковые версии браузеров): на моей машине оба наших сервера не работают должным образом в Firefox и Chrome, но работают безупречно в IE и Край. На другом компьютере одна система не работает в Firefox и Chrome (но работает в IE и Edge), но другая работает во всех браузерах.
Прежде всего, вот конфигурация Apache:
<VirtualHost *:80>
ServerAlias www.ourdomain.com
Redirect permanent / https://www.ourdomain.com
</VirtualHost>
<VirtualHost *:443>
ServerName www.ourdomain.com
SSLEngine On
SSLProxyEngine On
SSLCertificateFile /usr/local/cert.pem
SSLCertificateKeyFile /usr/local/privateKey.pem
ProxyPreserveHost On
ProxyPass /OpenClinica/favicon.ico https://localhost:8443/OpenClinica/
ProxyPassReverse /OpenClinica/favicon.ico https://localhost:8443/OpenClinica/
ProxyPass /OpenClinica/ https://localhost:8443/OpenClinica/
ProxyPassReverse /OpenClinica/ https://localhost:8443/OpenClinica/
ProxyPass / https://localhost:8443/OpenClinica/
ProxyPassReverse / https://localhost:8443/OpenClinica/
</VirtualHost>
Я твердо думаю, что здесь есть проблема. Позвольте мне объяснить редирект favicon: когда он отсутствует, все протестированные браузеры просто отображают файл favicon.ico в своем окне просмотра при входе в систему (или выдают страницу с ошибкой, если favicon.ico отсутствует там, где ожидается). Я понимаю, что это не обычное поведение и, вероятно, корень проблемы.
Ниже приведены соответствующие журналы доступа моих недавних попыток. То, что я сделал, было
- Войти * * 1023
- Нажмите «Список всех пациентов»
Реакция системы состояла в том, чтобы выгнать меня три раза. При моей последней попытке список пациентов был успешно отображен без перенаправления меня на целевую страницу.
# Login
127.0.0.1 - - [06/Nov/2018:08:24:52 +0100] "POST /OpenClinica/j_spring_security_check HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:24:52 +0100] "GET /OpenClinica/ HTTP/1.1" 200 200
127.0.0.1 - - [06/Nov/2018:08:24:52 +0100] "GET /OpenClinica/favicon.ico HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:24:52 +0100] "GET /OpenClinica/MainMenu HTTP/1.1" 200 7860
127.0.0.1 - - [06/Nov/2018:08:24:53 +0100] "GET /OpenClinica/favicon.ico HTTP/1.1" 302 -
# Failed attempt
127.0.0.1 - - [06/Nov/2018:08:24:53 +0100] "GET /OpenClinica/ListStudySubjects HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:24:53 +0100] "GET /OpenClinica/pages/login/login HTTP/1.1" 200 3656
127.0.0.1 - - [06/Nov/2018:08:24:54 +0100] "GET /OpenClinica/favicon.ico HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:24:54 +0100] "GET /OpenClinica/RssReader HTTP/1.1" 200 618
127.0.0.1 - - [06/Nov/2018:08:24:54 +0100] "GET /OpenClinica/pages/login/login;jsessionid=3B4533DD528207EDE047FF5F03A67306 HTTP/1.1" 200 3656
# Login
127.0.0.1 - - [06/Nov/2018:08:24:55 +0100] "POST /OpenClinica/j_spring_security_check HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:24:55 +0100] "GET /OpenClinica/ HTTP/1.1" 200 200
127.0.0.1 - - [06/Nov/2018:08:24:55 +0100] "GET /OpenClinica/favicon.ico HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:24:55 +0100] "GET /OpenClinica/MainMenu HTTP/1.1" 200 7860
127.0.0.1 - - [06/Nov/2018:08:24:56 +0100] "GET /OpenClinica/favicon.ico HTTP/1.1" 302 -
# Failed attempt
127.0.0.1 - - [06/Nov/2018:08:24:56 +0100] "GET /OpenClinica/ListStudySubjects HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:24:56 +0100] "GET /OpenClinica/pages/login/login HTTP/1.1" 200 3656
127.0.0.1 - - [06/Nov/2018:08:24:57 +0100] "GET /OpenClinica/favicon.ico HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:24:57 +0100] "GET /OpenClinica/RssReader HTTP/1.1" 200 618
127.0.0.1 - - [06/Nov/2018:08:24:57 +0100] "GET /OpenClinica/pages/login/login;jsessionid=61B9ABF7FADA8BE010E7BA19B842D3D0 HTTP/1.1" 200 3656
# Login
127.0.0.1 - - [06/Nov/2018:08:24:58 +0100] "POST /OpenClinica/j_spring_security_check HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:24:58 +0100] "GET /OpenClinica/ HTTP/1.1" 200 200
127.0.0.1 - - [06/Nov/2018:08:24:58 +0100] "GET /OpenClinica/favicon.ico HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:24:58 +0100] "GET /OpenClinica/MainMenu HTTP/1.1" 200 7860
127.0.0.1 - - [06/Nov/2018:08:24:59 +0100] "GET /OpenClinica/favicon.ico HTTP/1.1" 302 -
# Failed attempt
127.0.0.1 - - [06/Nov/2018:08:24:59 +0100] "GET /OpenClinica/ListStudySubjects HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:24:59 +0100] "GET /OpenClinica/pages/login/login HTTP/1.1" 200 3656
127.0.0.1 - - [06/Nov/2018:08:25:00 +0100] "GET /OpenClinica/favicon.ico HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:25:00 +0100] "GET /OpenClinica/RssReader HTTP/1.1" 200 618
127.0.0.1 - - [06/Nov/2018:08:25:00 +0100] "GET /OpenClinica/pages/login/login;jsessionid=7E5E5BAABF88A67655DF63968E8612A3 HTTP/1.1" 200 3656
# Login
127.0.0.1 - - [06/Nov/2018:08:25:01 +0100] "POST /OpenClinica/j_spring_security_check HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:25:01 +0100] "GET /OpenClinica/ HTTP/1.1" 200 200
127.0.0.1 - - [06/Nov/2018:08:25:01 +0100] "GET /OpenClinica/favicon.ico HTTP/1.1" 302 -
127.0.0.1 - - [06/Nov/2018:08:25:01 +0100] "GET /OpenClinica/MainMenu HTTP/1.1" 200 7860
127.0.0.1 - - [06/Nov/2018:08:25:02 +0100] "GET /OpenClinica/includes/new_cal/skins/aqua/theme.css HTTP/1.1" 200 1609
127.0.0.1 - - [06/Nov/2018:08:25:02 +0100] "GET /OpenClinica/favicon.ico HTTP/1.1" 302 -
# Successful attempt
127.0.0.1 - - [06/Nov/2018:08:25:03 +0100] "GET /OpenClinica/ListStudySubjects HTTP/1.1" 200 17796
127.0.0.1 - - [06/Nov/2018:08:25:04 +0100] "GET /OpenClinica/favicon.ico HTTP/1.1" 302 -