Как выяснить, почему символическая ссылка dom webapps dir работает на одной машине, а не на другой?

Недавно я создал виртуальную машину Ubuntu для разработки MarkLogic. Затем машина была распространена среди 4 других разработчиков для обеспечения согласованной платформы разработки. Сейчас я настраиваю еще одну часть головоломки dev, которая состоит из нескольких библиотек Java и веб-приложения JSP. Исходный код проекта находится в домашнем каталоге пользователя разработчика (у каждой машины одна и та же учетная запись). Я добавил символическую ссылку в /var/lib/tomcat6/webapps/ каталог, который указывает на корневой каталог веб-приложения в каталоге проекта.

/var/lib/tomcat6/webapps/jspapp -> /home/developer/dev/workspace/svn/Project/webapp/

(Фактические файлы JSP находятся в каталоге Project/webapp.)

Это прекрасно работает на моем экземпляре виртуальной машины. Я успешно скопировал настройки на одну другую виртуальную машину, и она работала нормально. Однако остальные виртуальные машины, на которых я копирую настройки, не работают. На первых 2 виртуальных машинах я получаю страницы веб-приложения. На других виртуальных машинах я получаю 404.

Все виртуальные машины были клонированы с одного оригинала. Все источники проекта веб-приложения одинаковы, за исключением одного значения конфигурации (IP-адрес локального компьютера). Я создал символьную ссылку таким же образом для каждого и убедился, что права / режимы файлов и каталогов одинаковы. Я сравнил установочные каталоги tomcat и не увидел различий в конфигурации между ними. Единственные различия между файлами, которые я вижу, - это то, что похоже на данные кэша Каталины. Для всех намерений и целей, настройки идентичны. Тем не менее, ясно, что-то не то же самое.

У кого-нибудь есть предложения относительно того, как я могу решить эту проблему? Я довольно новичок в мире Linux и совершенно новый для Tomcat.

Обновление - я скопировал содержимое связанного каталога в реальный каталог с тем же именем (после удаления ссылки), и он все еще не работает. Тем не менее, я могу увидеть копию /var/lib/tomcat6/webapps/ROOT/index.html что я положил в данный каталог. Он ведет себя почти так, как будто файлы JSP игнорируются.

1 ответ

Быстрый контрольный список:

  1. Проверь это allowLinking="true" был установлен в вашей конфигурации Tomcat: https://stackoverflow.com/questions/315093/configure-symlinks-for-single-directory-in-tomcat/315145

  2. Убедитесь, что пользователь tomcat процесс имеет разрешение на выполнение для каждой родительской папки /home/developer/dev/workspace/svn/Project/webapp/ каталог (т.е. /home, /home/developer, /home/developer/dev, /home/developer/dev/workspace...)

Другие вопросы по тегам