2014-10-20 6 views
1

В более ранних версиях ColdFusion можно было переименовать JSESSIONID, изменив jrun-web.xml Как это возможно в ColdFusion 10 на сервере Windows?Переименовать ColdFusion 10 JSESSIONID

Добавление либо

-Dorg.apache.catalina.SESSION_COOKIE_NAME=MYID 
-Dorg.apache.catalina.SESSION_PARAMETER_NAME=myid 

или

-Dorg.apache.catalina.JSESSIONID=SID 

к JVM Arguments под Server Settings > Java and JVM не похоже на работу.

ответ

3

Я изначально разместил это как комментарий, но после исследования я, возможно, наткнулся на ответ.

ColdFusion 10 установлен с модифицированной версией Tomcat - Reference 1: What’s the deal with Tomcat in ColdFusion 10?

ли встроенный сервер в ColdFusion 10 модифицированную версию Tomcat? Если да, каковы изменения и почему?

Да, встроенный сервер в ColdFusion 10 является модифицированной версией Tomcat. Когда мы начали, мы не предполагали внесения каких-либо изменений в Tomcat, но вскоре мы поняли, что людям нужен бесшовный опыт, когда они перейдут из ColdFusion 9 или предыдущей версии в ColdFusion 10. Это означает, что структура каталогов, опыт подключения - все должно быть как можно ближе к предыдущим версиям (JRun как встроенный сервер).

Похоже, что модифицированная версия Tomcat для ColdFusion был первоначально построен на Tomcat версии 7.0.23 - Reference 2: Getting Started with Tomcat in ColdFusion 10

В ColdFusion 10, JRun, который был в комплекте с более ранними версиями ColdFusion был заменен Кот. ColdFusion 10 теперь работает на Tomcat 7.0.23.

Version 7 из Tomcat больше не имеет SESSION_COOKIE_NAME или SESSION_PARAMETER_NAME свойства (что, по крайней мере объясняет, почему аргументы вы добавили не работали) - Reference 3: Tomcat 7 Session cookie configuration

С добавлением SessionCookieConfig в Servlet 3.0 спецификации , для упрощения конфигурации и сложности кода было удалено несколько параметров конфигурации cookie сеанса.

  • Connector.emptySessionPath: Это было удалено. Эквивалентный эффект можно получить, настроив sessionCookiePath = "/" в глобальном контексте.xml (в CATALINA_BASE/conf/context.xml).
  • org.apache.catalina.SESSION_COOKIE_NAME Системное свойство: Это было удалено. Эквивалентный эффект можно получить, настроив атрибут sessionCookieName для глобального context.xml (в CATALINA_BASE/conf/context.xml).
  • org.apache.catalina.SESSION_PARAMETER_NAME Системное свойство: Это было удалено. Эквивалентный эффект можно получить, настроив атрибут sessionCookieName для глобального context.xml (в CATALINA_BASE/conf/context.xml).
  • Контекст.disableURLRewriting: Это было удалено. Эквивалентный эффект можно получить, настроив элементы сеанса-конфигурации/отслеживания в веб-приложении или в глобальном файле CATALINA_BASE/conf/web.xml.

Обратите внимание, что информация гласит, что вы можете получить эквивалентный эффект, настраивая новый атрибут глобального файла context.xml sessionCookieName (в CATALINA_BASE/CONF/context.xml). Таким образом, вы должны быть в состоянии сделать что-то подобное в этом файле:

<Context path="/your_uri" sessionCookieName="my_id"> 

Reference 4

+1

+1. Хорошая находка. Мне было интересно, может ли это иметь какое-то отношение к конфигурации Tomcat. – Leigh

+0

Спасибо за ответ. Я посмотрю, как это работает. Я не знаю об атрибуте 'path', но после публикации я прочитал об атрибуте' sessionCookieName' и увидел, что файл cookie с указанным именем действительно установлен. Переменная ColdFusion 'Session.session' по-прежнему содержит строку' jsessionid', но она, похоже, не влияет на идентификацию сервера. –

+0

Я фактически изменил файл 'D: \ ColdFusion10 \ cfusion \ runtime \ conf \ context.xml' –