4

前提条件は次のとおりです。

  • example.comGodaddy にドメインを登録しました。
  • いくつかのアプリケーションを使用して、Tomcat を8080ポートで実行しています。8080 ポートは世界に隠されています。
  • にマッピングsubdomain.example.comしたいserver:8080/subdomain。将来的には、同様のマッピング (たとえば、 へ)subdomain2.example.comを実行できるようにしたいと考えています。server:8080/anotherContext
  • example.comにマッピングする必要がありますserver:8080/mainPageApp
  • 他のすべてのアプリケーションは、コンテキストを介してアクセスできる必要があります: example.com/app-> server:8080/app.

今のところ、godaddy のみを構成しました (これが良いかどうかはわかりません)。

Godaddy ドメイン構成

この場合、nginx の設定を手伝ってもらえますか? これが私のものですが、無限のリダイレクトを送信します:

server {
    listen       80;
    server_name  localhost;

    location / {
        root   html;
        index  index.html;
    }
}
server {
    listen       80;
    server_name  subdomain.localhost;

    location / {
        proxy_pass http://127.0.0.1:8080/subdomain;
    }
}
4

1 に答える 1

2

Ok。この作品を手に入れました。解決策が正しいかどうかはわかりませんが:

まず、Tomcat でサブドメインをセットアップする必要があります。これが私がインスパイアされた答えです。

<Host name="subdomain.example.com" appBase="webapps" unpackWARs="true" autoDeploy="true">
    <Context path="" docBase="subdomain" />
</Host>

次に、nginx を次のように構成します。

server {
    listen       80;
    server_name  example.com;

    location / {
        root   /path/to/domain/root;
        index  index.html;
    }
}

server {
    listen       80;
    server_name  subdomain.example.com;

    location / {
        proxy_pass        http://subdomain.example.com:8080;
        proxy_set_header  Host             $http_host;
        proxy_set_header  X-Real-IP        $remote_addr;
        proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
    }
}

ドメイン構成は質問のままです-それは良いです。

最後に、Tomcatsubdomain.warwebappディレクトリに置くだけで、魅力的に動作します!

于 2013-03-23T00:49:13.297 に答える