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

URL-адрес Apache Tomcat без имени приложения

Я развернул приложение tomcat и сделал необходимые настройки для веб-сервера (для удаления порта и т. Д.).

Я могу получить доступ к приложению следующим образом

http://www.domain.com/appname/

Но я хотел бы получить доступ к приложению, даже когда пользователь входит

http://www.domain.com (просто URL, без названия приложения)
http://domain.com (просто домианское имя)

Я новичок в конфигурациях Apache, мне очень помогут любые указатели или образцы.

Я думал "прокси-прокси" разрешится ...
Надо ли искать правила перезаписи или какие-то другие?

Я решил это, поставив index.html файл в webapps/ROOT папка, содержащая обычное перенаправление HTML:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
    <title>appname</title>
    <meta http-equiv="REFRESH" content="0;url=./appname/"></HEAD>
<body>
</body>
</html>

Для тех, кому может понадобиться решение, я просто добавил следующее в httpd.conf, и он отлично справляется с моими проблемами:

RewriteEngine on  
RewriteCond %{HTTP_HOST} !^www\. [NC]  
RewriteCond %{HTTP_HOST} !^$  
RewriteRule ^/?(.*) http://www.%[HTTP_HOST}/$1 [L,R,NE]  

ProxyPass         /appname  http://localhost:8080/appname  
ProxyPassReverse  /recsconnect  http:...  
ProxyPass / http...  
ProxyPassReverse / http....  

Я забыл ранее добавить последние две строчки.

Вы можете развернуть свое приложение как веб-приложение ROOT в Tomcat, чтобы избавиться от префикса, который у вас остался. Просто разархивируйте свое приложение в $CATALINA_HOME/webapps/ROOT папку или - если он развернут как заархивированный файл .war - просто переименуйте свой файл в ROOT.war при вставке в webapps папка. Тогда он будет доступен без префикса приложения.

Что касается ваших доменных имен с / без «www»: если вы используете Apache перед Tomcat, то mod_rewrite справочная документация имеет хороший раздел, описывающий канонические имена хостов.

Еще один вариант, который стоит рассмотреть, - это UrlRewriteFilter. Особенно полезно, если вы уже знаете mod_rewrite, но не хотите использовать apache.