我有这样的网址:
http://olddomain.com/demo?abc=ced&ghi=jkl
我想将其重写为单独的域作为查询:
http://newdomain.com/legacy?url=http%3A%2F%2Folddomain.com%2Fdemo%3Fabc%3Ddef%26ghi%3Djkl
现在我有这样的事情:
RewriteRule (.*) http://newdomain.com/legacy?url=%{HTTP_HOST}%{REQUEST_URI}?%{QUERY_STRING}
问题是输出是:
http://newdomain.com/?url=olddomain.com/demo?abc=def&ghi=jkl
所以 nohttp://
和字符 /、?、= 和 & 不会被转义。除此之外,如果原始请求中没有查询,则会有尾随?,但这可能不是大问题。