nginx возвращает прокси для tomcat, префикс виртуального хоста - PullRequest
0 голосов
/ 17 февраля 2020

Я использую nginx для обращения прокси к экземпляру tomcat. Экземпляр находится в / host / tomcat и открывает страницу tomcat по умолчанию (webapps / ROOT). Однако во всех ресурсах на этих страницах tomcat отсутствует префикс tomcat, так как предполагается, что он находится на уровне root.

nginx настройка прокси-сервера для страницы по умолчанию tomcat /host/tomcat/ Ссылка на странице выглядит как /example, что приводит к /host/examples в качестве целевого адреса, но мне нужно, чтобы он приводил к /host/tomcat/examples, поэтому ссылка должна быть действительно /tomcat/examples

Теперь я не уверен, где настроить эту настройку. Я попытался сделать это с настройками виртуального хоста и контекста tomcat, но это не помогло.


upstream tomcat-cluster {
    server 127.0.0.1:8080;
}

server {
    listen       443 ssl http2 default_server;
    listen       [::]:443 ssl http2 default_server;
    server_name  my.public.ip.address;
    root         /usr/share/nginx/html;

    ssl_certificate /etc/nginx/ssl/selfsigned.crt;
    ssl_certificate_key /etc/nginx/ssl/selfsigned.key;

    include /etc/nginx/serverconf/*.conf;

    location / {}

    location /tomcat/ {
        proxy_pass         http://tomcat-cluster/;
        proxy_redirect     off;
        proxy_set_header   Host             $host;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

   }
}

Я пытался редактировать этот раздел несколькими способами, но я не сделал того, что ожидал. Например:


<!-- I change the default host here -->
<Engine name="Catalina" defaultHost="my.public.ip/tomcat"> 
    <Realm className="org.apache.catalina.realm.LockOutRealm">   
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
    </Realm>

    <!-- and change host here as well -->
    <Host name="my.public.ip/tomcat" appBase="webapps" unpackWARs="true" autoDeploy="true">

        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
            prefix="localhost_access_log" suffix=".txt"
            pattern="%h %l %u %t &quot;%r&quot; %s %b"
        />

   <!-- I tried also stuff with the context but the tomcat will not even start-->
   <!--Context path="" docBase="webapps" debug="0" reloadable="true" /-->
   </Host>

Кто-нибудь знает, как мне это работает?

Я нашел это qeuration , но оно не сработало.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...