替换第一个字符中的$ args
问题描述:
我想替换的$args
的第一个字符rewrite
我有以下几点:
return 302 https://domain/accounts/registration?_uid=1928&_tag=$request_uri&$args;
如果$args
是空的我刚刚拿到了结尾的链接&
这不是一个大问题,但如果我有一些$args
我得到something&?arg1
这是错误的,因为&?
被视为前一个参数的延续。
如何从$args
中删除第一个字母(?
)?
答
$request_uri
已包含可选?
和查询字符串。所以你的额外?
来自$request_uri
而不是从$args
。
您可以尝试使用$uri&$args
而不是$request_uri
,它将用&
替代嵌入的?
。
例如:
return 302 https://domain/accounts/registration?_uid=1928&_tag=$uri&$args;
然而,在$request_uri
任何百分比编码字符由$uri
构造的时间被完全解码 - 这可能或可能不影响应用程序。
查看this document了解更多信息。