2009-03-29 10 views
8

私は、バックエンドのGrailsアプリケーションの前でリバースプロキシとしてApacheからNginxへの切り替えについていくつかの調査を行っています。私はいくつかのURLの書き換えをして遊んでいて、私のバックエンドから返されたレスポンスの問題にぶつかりました。私は、位置のヘッダーの書き換えを処理することができますが、私は実際のコンテンツを処理するための最良の方法は、リンクなどのために何ですか?後処理の最善の方法Nginxのリバースプロキシの応答

nginx_substitutions_filterが推奨されている方法ですか、それともレスポンスボディでコンテンツの置換を行うために別のモジュールが使用されていますか?

私は、追加のリクエストヘッダに基づいて正しいコンテンツをレンダリングするためのGrailsプラグインを作成しようと考えていましたが、今では、アプリケーションの外側で最も柔軟に、

リバースプロキシシナリオ用のURL書き換え/応答後処理を行うためのベストプラクティスに関する記事はありますか?

答えて

0

ヘッダーのみを置き換える場合は、HeadersMoreサードパーティ製モジュールが最適です。 これ以外にも、サスペジションモジュールが唯一の選択肢のようです。

しかし、バックエンドで正しいページが返されるようにすることをお勧めします。すべてのレスポンスを変更するとリソースが使用され、時間がかかります。

2

Luaモジュールを使用してレスポンスを取得し、それをルア文字列のように操作できます。愚かな例大文字に出力:

res = ngx.location.capture('/some/path') 
ngx.print(string.upper(res.body)) 

http://wiki.nginx.org/HttpLuaModule#ngx.location.capture

参照します
関連する問題