2

ここでは、personal.me と company.com として指定する 2 つのインターネット名を介してプライマリ インターフェイスにアクセスできる VPS を持っています。Mattermost サーバーを実行しており、次の nginx ルールを使用して personal.me 経由でアクセスできます。

server {
    server_name personal.me;

        location / {
            client_max_body_size 50M;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            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;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header X-Frame-Options SAMEORIGIN;
            proxy_pass http://localhost:8065;
        }
    }

これは問題なく機能していますが、 http://company.com/fora/からもインスタンスにアクセスしたいと考えています。ここで重要なのは、削除する /fora/ パスがあることです。https:// を使用する必要があることはわかっていますが、それは別の問題です。私は試した:

server {
    listen       80;
    server_name  company.com;

    location / {
        root   [...];
        index  index.html;
    }

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    location /fora/ {
        client_max_body_size 50M;
        rewrite /fora/ / break;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        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;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header   X-Frame-Options   SAMEORIGIN;
        proxy_pass http://localhost:8065;
    }
}

しかし、 http: //company.com/fora/に移動すると、タイトル バーが Mattermost に変わりますが、コンテンツはありません --- ページは空白です。personal.me の URL から Mattermost にアクセスできるので、Mattermost は正しく動作していると思います。

company.com ルールの何が問題になっていますか? Mattermost にパスを渡さないことと関係がありますか?

Nginxリバースプロキシ( proxy_pass )によると、サブフォルダーとhttp://forum.mattermost.org/t/blank-page-when-installing-mattermost-with-nginx-proxy-pass-as-subdirectory/1604は渡されません。「不可能ですが、それはわかりません...確かにURLの一部を削除することは、nginxのコア機能の1つですか?

4

2 に答える 2

1

これは、アプリがサーバー ルートにあると想定しているため、現在 Mattermost では不可能のようです。

詳細については、github のこの問題このチケットを参照し、これがサポートされる機能になる時期/場合を追跡してください。

于 2016-06-23T10:17:00.150 に答える