1 votes

Définir l'hôte virtuel pour le service web Tomcat 8 sur AWS EC2

En plus de l'Apache par défaut sur AWS EC2 Linux, j'ai installé Tomcat 8 et déployé un service web dessus.

L'URL actuelle (qui fonctionne) est http://example.com:8080/MyService/api/generatePath

Je veux le raccourcir avec un sous-domaine api.mydomain.com, afin de pouvoir utiliser cette URL : http://api.example.com/generatePath .

C'est ce que j'ai fait sur le /etc/httpd/conf/httpd.conf mais cela ne fonctionne pas :

<VirtualHost *:80>
    ServerName api.example.com
    ProxyRequests Off
    ProxyPreserveHost On
    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>
    ProxyPass / http://localhost:8080/MyService/api
    ProxyPassReverse / http://localhost:8080/MyService/api
</VirtualHost>

2voto

hadronzoo Points 736

Tout d'abord, avez-vous activé le proxy mod sur Apache ? Deuxièmement, essayez de supprimer ProxyPreserveHost On

En outre, assurez-vous que le port est ouvert ; la façon la plus simple de le vérifier est d'aller à http://www.yougetsignal.com/tools/open-ports/ (Saisir l'adresse du site web et le port 80)

J'espère que cela vous aidera

2voto

ajirios Points 21

(1) Pour retirer le /MyService/ de votre url, renommez votre MyService.war à l'adresse ROOT.war et copiez-le dans votre dossier webapps en utilisant sudo cp . Normalement, votre installation de Tomcat est censée générer automatiquement un répertoire ROOT dans le même dossier.

(2) Pour supprimer le :8080, accédez au site via le :80 qui ne figure pas dans la barre d'URL, à l'aide de l'option installée httpd.conf vous avez déclaré. Modifiez les deux éléments suivants pour qu'ils ressemblent à ceci.

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

<VirtualHost *:80>
    ServerName api.example.com

    ProxyRequests On
    ProxyPass / http://localhost:8080/
    ProxyPassReverse / http://localhost:8080/

    <Location "/">
            Order allow,deny
            Allow from all
    </Location>
</VirtualHost>

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X