Как развернуть военные файлы в cPanel и удалить название проекта?
Мне нужно запустить приложение Java на cPanel
. Я успешно установил Tomcat,
Я могу запустить свое приложение, скопировав файл war
в папку www
, но проблема в том, что он показывает имя проекта (war
имя файла) в адресе, мне нужно знать, как его удалить, поэтому пользователи могут получить доступ к www.example.com
, а не к www.example.com/MyProject/index.jsp
?
Ответы
Ответ 1
В соответствии с одной службой хостинга cpanel доступ к командной строке, как правило, отключен для cpanel по соображениям безопасности, и вам нужно его запросить. Если у вас есть этот доступ, вы можете войти в систему и запустить команду unzip (после загрузки военного файла с помощью FileZilla или аналогичного).
Согласно cpanel, если у вас нет доступа к командной строке, вы можете загрузить войну в свой public_html, но перед этим вам нужно изменить конфигурацию apache и добавить для нее "JkMount" (см. ниже "appname" ).
<IfModule mod_jk.c>
JkMount /*.jsp ajp13
JkMount /servlet/* ajp13
JkMount /servlets/* ajp13
JkMount /*.do ajp13
JkMount /appname/* ajp13
</IfModule>
Кроме того, вы вместо "appname" ставите "ваше имя приложения". Это изменение даст указание apache перенаправить вызовы на URL верхнего уровня (например, mydomain.com/appname) на ваш экземпляр Tomcat (например, mydomain.com:8080/appname). После того, как вы загрузили войну и изменили конфигурацию, вам необходимо перезапустить apache.
Но мы сказали, что у нас нет доступа ssh, так как мы можем изменить этот файл. в соответствии с этот форум мы можем отредактировать /home/username/public _html/.htaccess или просто /public _html/.htaccess и добавить следующие строки:
SetHandler jakarta-servlet
SetEnv JK_WORKER_NAME ajp13
Теперь apache будет перенаправлять на tomcat для mydomain.com/appname вместо mydomain.com:8080/appname. Как мы можем заставить его работать только с mydomain.com? Я просто не знаю ответа на это. Насколько я знаю, используя обычный трюк изменения файла войны в ROOT.war не работает в cpanel.
Ответ 2
Вам нужно будет исправить записи в /usr/local/jakarta/tomcat/conf/server.xml. Некоторое время назад после многократной настройки я использовал это, и он работал:
<Host name="domain.com" appBase="/home/username/public_html" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false" reloadable="true">
<Alias>www.domain.com</Alias>
<Context path="" reloadable="true" docBase="/home/username/public_html" debug="1" privileged="true" autoDeploy="true" liveDeploy="true" />
<Context path="/manager" debug="0" privileged="true" docBase="/usr/local/jakarta/tomcat/server/webapps/manager">
</Context>
</Host>
Ответ 3
Название военного файла не имеет ничего общего с тем, как проект представлен контейнером - это просто вопрос конфигурации и контейнеры по умолчанию представляют собой путь контекста в качестве имени файла.
И использование ROOT.war - просто глупый трюк, прочитанный о конфигурации контекста в Tomcat (я предположил, что вы используете Tomcat)
http://tomcat.apache.org/tomcat-7.0-doc/config/context.html
Ответ 4
Существует несколько способов установить корневой контекст приложения в tomcat. Все они описаны в документации сервера. Здесь еще один
Изменить tomcat_home\conf\server.xml
. В теге <Host
поставьте
<Context path="" docBase="yourappname" debug="0" reloadable="true" />
где вы помещаете yourappname.war
в папку webapps
, отражающую атрибут appBase
тега <Host
.
Сохраните, перезапустите сервер.
Ответ 5
Если вы не можете редактировать server.xml
, тогда вы можете удалить ROOT.war и переименовать свой военный файл в ROOT.war или просто извлечь ваш .war файл в каталог ROOT.
В следующий раз, когда вы откроете свой сайт ex - www.example.com, вам будет показан index.jsp.
Я сделал то же самое для своего сайта в Openshift, который предоставляет бесплатную услугу PAAS
Ответ 6
им просто нужно распаковать архив .war в оболочке. См:
Как развернуть приложение .WAR - Ubiquity Web Hosting Wiki
У нас более 100 пользователей, которые использовали эти инструкции и отлично работают. Если вы развернули Tomcat с помощью EasyApache и настроили его как cPanel, это должно быть об этом. Это было получено из:
http://twiki.cpanel.net/twiki/pub/Al...s08/Tomcat.pdf
http://forums.cpanel.net/f42/how-auto-deploy-war-cpanel-server-55096.html