2013-10-05 3 views
0

ПРИМЕЧАНИЕ. Я поставил щедрость на этот вопрос. Я еще не смог поставить щедрость на аналогичный вопрос BUT SIMPLER, here. Это нормально, если вы можете помочь с этим более простым вопросом, и тогда мы также можем ответить на этот вопрос. В более простом вопросе вы можете сами создать сценарий самостоятельно. И я также загрузил Jetty 9.1.0 - так что мне все равно, если он работает с 9.05 или 9.10, любая версия в порядке.grails: получить переадресацию при развертывании на сервер Jetty, но отлично работает, используя Jetty в режиме разработки

Я установил Spring Security Core, чтобы получить функцию «защита канала», а именно указать, какие действия контроллера требуют подключения ssl.

Это прекрасно работает в режиме разработки с использованием сервера Jetty - например,/cert/page1, он просит одобрить соединение https, как ожидалось.

Когда я разворачиваю (продюсирую) WAR-файл на сервер Jetty 9 (размещенный извне), я получаю индикацию цикла переадресации, когда я перехожу к тому же контроллеру/действию (используя Chrome), или затем в Firefox он также указывает " страница не перенаправляется должным образом ». Я очистил файлы cookie в Chrome на всякий случай и эту проблему.

Я создал сертификат SSL для сервера Jetty 9, следуя инструкциям (используя внешнее агентство сертификации), и чтобы установить его, я просмотрел различные статьи ssl на Jetty, а затем обнаружил, что проще всего изменить файл start.ini, который Я сделал, раскомментируйте следующие строки и указывая на мой sslcert/хранилище ключей:

#=========================================================== 
# SSL Context 
# Create the keystore and trust store for use by 
# HTTPS and SPDY 
#----------------------------------------------------------- 
jetty.keystore=sslcert/keystore 
jetty.keystore.password=xxxxx 
jetty.keymanager.password=xxxxx 
jetty.truststore=sslcert/keystore 
jetty.truststore.password=xxxxx 
jetty.secure.port=8443 
etc/jetty-ssl.xml 


#=========================================================== 
# HTTPS Connector 
# Must be used with jetty-ssl.xml 
#----------------------------------------------------------- 
jetty.https.port=8443 
etc/jetty-https.xml 

есть ли вообще способ, которым я могу сказать, если Jetty примет любой запрос HTTPS страницы? В это журнал, кажется, придумать хорошо от того, что я сделал, а именно:

2013-10-04 20:48:43.520:INFO:oejs.ServerConnector:main: Started  [email protected]{HTTP/1.1}{0.0.0.0:80} 
    2013-10-04 20:48:43.692:INFO:oejs.ServerConnector:main: Started [email protected]{SSL-http/1.1}{0.0.0.0:8443} 

Кроме того, для моего Config.groovy определения безопасных каналов у меня есть:

grails.plugins.springsecurity.secureChannel.definition = [ 
    '/cert/cpnimember': 'REQUIRES_INSECURE_CHANNEL', 
    '/cert/page1': 'REQUIRES_SECURE_CHANNEL', 
    '/cert/page2': 'REQUIRES_SECURE_CHANNEL', 
    '/cert/page3': 'REQUIRES_SECURE_CHANNEL', 
    '/cert/page4': 'REQUIRES_INSECURE_CHANNEL' 
] 

Я не уверен, как отладить это. Я хотел бы перейти на какую-то страницу на моем сервере причала 9, для чего требуется https/ssl, чтобы убедиться, что он работает без определенных ядром, связанных с весной, но не знаю, что это такое.

Можете ли вы предоставить помощь в том, как отлаживать это или что не так?

Спасибо.

+0

is etc/jetty-https.xml правильный? или предполагается /etc/etty-https.xml? – Vinny

+0

Все, что я делал, раскололи строки в файле, не изменили путь, но я могу попробовать его с помощью ведущего «/» и сообщим вам, работает ли он, благодаря этой идее. – Ray

+0

.. нет, это должен быть относительный путь, так делается по всему этому файлу. – Ray

ответ

0

Этот вопрос похож на simplified question Я создал и предложил щедрость. Теперь, когда награда за другой вопрос присуждается, я могу удалить этот вопрос. НО, это не позволяет мне удалить или удалить его, поэтому ...

0

Мне кажется, что Jetty перенаправляет анонимный запрос для входа в систему (заверенный аутентификацией) на экране входа в систему. Существует ли экран входа в систему?

+0

Нет, я не вижу экран входа. Я могу видеть свое приложение, все хорошо, пока я не попытаюсь перейти на «страницу» (на самом деле это действие контроллера, например/cert/page2), что «REQUIRES_SECURE_CHANNEL», а затем браузер жалуется «на веб-странице есть цикл переадресации ". Chrome не позволит мне увидеть его в отладке, но firefox будет, и он снова и снова вытаскивает одну и ту же страницу. Возможно, это какая-то проблема с портом, но я пытаюсь изменить различные значения порта http и https, и ничего не помогает. – Ray

+1

Я думаю, что инструкции Jetty SSL отсутствуют - я имею в виду, что они хорошо объясняют, как настроить сертификат, но теперь, как настроить SSL, это меня очень сбивает с толку. В моем другом вопросе, но упрощенном - я настраиваю самое основное приложение Grails, которое занимает несколько минут, но не может заставить его работать на сервере либо только на моем рабочем столе, где работает Jetty в grails среда разработки. – Ray

+0

спасибо - если вы перейдете на другое сообщение, вверху, вы можете увидеть поведение на сервере (в прямом эфире). – Ray

Смежные вопросы