現在、私はhttp://www.example.com
にサイトを持っており、http://www.example.com/api/v2/<anyhting>
からのすべてのリクエストはhttp://api.v2.com/<anything>
にリダイレクトされました。 http://api.v2.com
にはURIがないことに注意してください。 私の設定:URIなしのnginx proxy_pass
server {
listen 80;
server_name www.example.com;
location /api/v2/ {
proxy_pass http://api.v2.com;
}
location/{
index index.html;
root /var/www/example.com/htdocs;
}
}
この方法では、しかし、要求がされているプロキシはhttp://api.v2.com/api/v2/<anything>
ないhttp://api.v2.com/<anything>
ありません。 は、私はすでに気づいたこと:希望として
location /api/v2 {
proxy_pass http://api.v2/com/api;
作品 - http://api.v2.com/api/<anything>
からhttp://api.v2.com/api/v2/<anything>
プロキシ。
最初の動作を達成する方法はありますか?書き換えを使わなければならないのですか?私はそれが正規化されたURIに関連していることを知っています、そして、それは期待されています、それを行う方法があるかどうかを知りたいだけです。
あなたが設定を提供して動作します(proxy_passディレクティブでapi.v2.comを楽しみに加えるスラッシュ)ことを言っていますか?例えばwww.example.com/api/v2/developer/10へのリクエストは、api.v2.com/developer/10にプロキシされますか?私はこれを試したと確信して、それは動作しませんでした... –