Я установил Tomcat 7 в папку usr / shared / tomcat7. После этого установил Solr 4.7 в папку / var / www / в моем Ubuntu. Мой Solr теперь работает на HTTP: // локальный: 8983 / Solr / URL, но я хочу переместить его сейчас на сервер Tomcat и хочу получить к нему доступ HTTP: // локальный: 8080 / Solr / URL-адрес.
Что делать? Помоги мне, пожалуйста.
Вы можете использовать Solr с Jetty, который поставляется с Solr, и просто изменить номер порта в файле jetty.xml. Если вы хотите использовать Solr с Tomcat, вам нужно сделать больше, чем это. Вот полная инструкция:
sudo apt-get install tomcat7
cd /tmp
wget http://{mirror site}/apache/lucene/solr/4.0.0/apache-solr-4.0.0.tgz
cp /tmp/apache-solr-4.0.0/dist/apache-solr-4.0.0.war /var/lib/tomcat7/webapps/solr.war
mkdir /usr/share/solr
cp -R /tmp/apache-solr-4.0.0/example/solr/* /usr/share/solr/
sudo pico /etc/tomcat7/Catalina/localhost/solr.xml
<Context docBase = "/ var / lib / tomcat7 / webapps / solr.war" debug = "0" privileged = "true" allowLinking = "true" crossContext = "true"> <Имя среды = "solr / home" type = "java.lang.String" value = "/ usr / share / solr" override = "true" /> </ Context>
Создать ядра
Создание примера ядра:
mkdir /var/lib/solr/example
cp -R /usr/share/solr/collection1 /var/lib/solr/example/
mkdir /var/lib/solr/data/example
chown -R tomcat7:tomcat7 /var/lib/solr
ln -s /var/lib/solr/example /usr/share/solr/example
<solr persistent = "false"> <cores adminPath = "/ admin / cores" shareSchema = "true"> <core name = "example" instanceDir = "example" /> </ сердечники> </ Solr>
7. Ядра Solr доступны по адресу Http: // имя_хоста: порт / Solr / администратора / сердечники (http://example.com:8080/)
8. Добавьте другие ядра таким же образом.
Измените порт Tomcat с 8080 в /etc/tomcat7/server.xml
Безопасность: установите пароль
а. Откройте /etc/tomcat7/tomcat-users.xml для редактирования.
б. Добавьте роль Solr и пользователей внутри элемента и сохраните изменения:
<role rolename = "solradmin" /> <user username = "username" password = "password" role = "solradmin" />
с. Откройте /var/lib/tomcat7/webapps/solr/WEB-INF/web.xml для редактирования. Добавьте следующие строки в элемент:
<security-constraint> <web-resource-collection> <web-resource-name>Solr Lockdown</web-resource-name> <url-pattern>/</url-pattern> </web-resource-collection> <auth-constraint> <role-name>solradmin</role-name> </auth-constraint> </security-constraint> <login-config> <auth-method>BASIC</auth-method> <realm-name>Solr</realm-name> </login-config>
д. Сохраните изменения и перезапустите Tomcat (/etc/init.d/tomcat7 restart).
е. Доступ к Solr с помощью Http: // имя пользователя: [email protected]: 8080 / Solr
Если tomcat жалуется на отсутствующие библиотеки, такие как logger, скопируйте необходимые файлы jar в / var / tomcat7 / lib
Пожалуйста, проверьте ссылку ниже для решения.
http://www.dansolovay.com/2014/06/switching-solr-from-port-8983.html