0
 server {   
        listen 80;
        server_name localhost;
        location / {
            index index.html;
            root /Users/Lin/Codes/JS/Emberjs/yeoman-ember/dist;
        }  

        location ~* ^/json {
            root
            proxy_pass http://localhost:9292;

        }
    }

構成はちょっと機能しますが、合格するだけです

localhost:9292/jsonlocalhost/json

しかし、私が欲しいのは

localhost:9292/json「ローカルホスト」へ

localhost:9292/json/post「localhost/post」へ

私がする必要があるのは、ルートを設定するか、書き直すことだと思います。誰かアイデアがありますか?

4

1 に答える 1

0

ポート 9092 から 80 へのすべての接続を渡したい場合は、間違ったポートをリッスンしています。

リッスンしているポートを 9092 に変更します。

server {   
    listen 9092;
    server_name localhost;

    root /Users/Lin/Codes/JS/Emberjs/yeoman-ember/dist;

    location / {
        index index.html;

    }  

    location ~* ^/json {
        proxy_pass http://localhost:80;
        proxy_set_header  X-Real-IP  $remote_addr;
    }
}

ロケーションブロック内でルートを使用しないようにしてください。nginxのドキュメントで説明されているように、これは一般的な落とし穴です

また、ポート 80 をリッスンするように別のサーバーを構成する必要があります。

于 2013-04-25T11:23:14.407 に答える