Я сталкивался с этой проблемой в течение одного месяца. Размещение контекстного тега внутри server.xml небезопасно, оно влияет на элементы контекста, развертываемые для всех других хостов, для больших приложений это также приводит к ошибкам подключения, а также к плохой изоляции, например, вы можете получить доступ к другим сайтам с помощьюимя папки domain2.com/domain1Folder !!также соединения сеансов базы данных загружены дважды!Другой способ - поместить файл ROOT.xml, в котором есть контекстный тег с полным путем, например:
<Context path="" docBase="/var/lib/tomcat7/webapps/ROOT" />
, в conf / catalina / webappsfoldername и развернуть файл war как ROOT.war внутри webappsfoldername, а также указать хост, например * 1004.*
<Host name="domianname" appBase="webapps2" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false" >
<Logger className="org.apache.catalina.logger.FileLogger"
directory="logs" prefix="localhost_log." suffix=".txt"
timestamp="true"/>
</Host>
В этом подходе и для приложений того же типа пользовательские сессии не имеют хорошей изоляции!вы можете войти в app1, если app1 совпадает с app2, вы можете после входа в систему через сеанс на стороне сервера автоматически войти в app2 ?!Таким образом, вы должны хранить сессию пользователей в кэше на стороне клиента, а не с jsessionid!мы можем изменить имя движка с localhost для его решения.но скажем, чтобы играть с котом, нужно больше времени, чем с другими кошками!