私はこれを実装しようとしています- https://Gist.github.com/MendelGusmao/235631 Lua、nginxベースのURL短縮サービス、実装したい唯一の変更は、クエリ文字列パラメーターが短縮されている場合ですURL私はそのパラメータを取り、長いURLに挿入する必要があります。
例えば http://google.com?test=2 は http://abc.in/abc のようになります http:// abc。 in/abc?test = リダイレクトされます- http://google.com?test= 。
そのために、$ request_URIからクエリ文字列パラメーターを取得する必要があります。誰かがコードを手伝ってくれるでしょうか?
_ngx.var.arg_name
_を使用できるはずです。ここで、name
はアクセスするクエリパラメータの名前です。クエリパラメータの処理の詳細については、 このチュートリアルの「無限の名前を持つ変数」セクション を参照してください。 Lua nginx/openrestyの例については、私の ブログ投稿 も確認してください。
別の方法として、ngx.req.get_uri_args()
を使用して、すべてのクエリパラメータを1つのテーブルとして取得できます。これらの方法の簡単な比較については、同じチュートリアルの このセクション を参照してください。
ngx.var.QUERY_STRING
を使用してクエリ文字列にアクセスし、エスケープを解除して解析することもできます。
$arg_test
を使用すると、nginxだけでクエリパラメータを取得できます。この例では、test
がクエリパラメータの名前です。
これは http://nginx.org/en/docs/http/ngx_http_core_module.html#var_arg_ に記載されています。