Я довольно новичок в HTTPS, и я пытаюсь разместить Jetty HTTPS-сервер из пакета OSGi. Все отлично работает, когда я передаю свойства ниже в качестве аргументов виртуальной машины в моей конфигурации запуска, но поскольку это не вариант для меня, я поставляю параметры внутри метода запуска активатора, используя метод System.setProperties().Хостинг HTTPS-сервера внутри OSGi
System.setProperty("org.eclipse.equinox.http.jetty.https.port", "9090");
System.setProperty("org.eclipse.equinox.http.jetty.https.enabled", "true");
System.setProperty("org.eclipse.equinox.http.jetty.https.host", "0.0.0.0");
System.setProperty("org.eclipse.equinox.http.jetty.ssl.keystore", "/home/https/keystore.jks");
System.setProperty("org.eclipse.equinox.http.jetty.ssl.password", "password");
Используя этот подход, сервер HTTPS на порту 9090 работает нормально, но есть две проблемы,
То же веб-страница также служившие на 80 порту HTTP, который я не хочу. Это там, даже когда я использую:
System.setProperty("org.eclipse.equinox.http.jetty.http.enabled","false");
Поскольку нежелательный HTTP веб-страница получает размещенный на порт 80 (порт System), я должен вызвать расслоение как корень в противном случае я получаю java.net.SocketException: Отказано
Так как может быть другие страницы, размещенные на порт 80, я не хочу, чтобы отключить HTTP полностью или вручную разрегистрировать сервера из порта 80 в моем пачке.
Я очень благодарен за любые указания о том, как остановить это поведение без необходимости изменять какие-либо другие порты вручную.