Spring и mod_jk jsp source в ответе

У меня есть весенний контроллер, также apache + mod_jk + tomcat. Таким образом, после запроса к моему контроллеру в ответ я получаю исходный код JSP

Конфигурация mod_jk:

<VirtualHost <some ip>:8000>
        ServerName <host>
        ServerAlias <alias> 
        DocumentRoot <path>
        JkMountCopy On
</VirtualHost>
JkWorkersFile <path>/workers.properties
JkMount /app* worker1

workers.properties

worker.list=worker1
worker.worker1.port=18001
worker.worker1.secret=some_secret
worker.worker1.host=localhost

Насколько я понимаю, Apache успешно получает запрос => mod_jk перенаправляет его в Spring контроллер. Вопрос в том, что будет дальше? Spring преобразует тело ответа на страницу jsp и передает его в apache? Как я могу исправить эту проблему?

1 ответ

Решение

Вот рабочая конфигурация, может быть, вы можете найти что-нибудь пропущенное в вашем:

  1. httpd.conf (модуль Mod_jk должен быть активирован в httpd.conf):

    LoadModule jk_module modules/mod_jk.so
    
    #### JK CONFIG
    
    JkWorkersFile   D:\Server\jk\workers.properties
    JkLogFile       D:\Server\jk\mod_jk.log
    JkShmFile       D:\Server\jk\jk-runtime-status
    JkLogLevel      warning
    
    JkMount /modjkstatus    stats
    
  2. workers.properties:

    worker.list=stats,node1
    
    worker.node1.type=ajp13
    worker.node1.host=localhost
    worker.node1.port=8009
    
    #status information (optional)
    worker.stats.type=status
    
  3. Конфигурация виртуального хоста

    JkMount /myapp                node1
    JkMount /myapp/*              node1
    
  4. Перезапустите Apache и проверьте error.log и mod_jk.log

  5. Убедитесь, что порт ajp из works.properties соответствует порту соединителя apj в файле server.xml.
  6. Запустите Tomcat.
  7. Access / modjkstatus. Если modjk работает, вы должны увидеть информационную страницу.
  8. Доступ /myapp.
Другие вопросы по тегам