Назад | Перейти на главную страницу

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

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

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

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

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

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

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

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

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

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

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