基本上,我想要这个网址:
http://domain.tld/auth.php?state=somestate&token=somelongtoken
重写/重定向到这个:
http://domain.tld/auth/validate/somestate/somelongtoken
我已经在网上看了很长时间了,但我不知道如何做这件事..
另外 - 重定向或重写在这里是最好的吗?
除了从 API 验证用户之外,我不会将 URL 用于其他任何事情,因此它只是在访问该页面后重定向用户。
有一些未经测试的代码...
我会使用重写,因为您说 /auth.php 将执行 Location: 已经。发送两个重定向确实没有意义。另外,这对搜索引擎来说是不好的做法(我知道在这种情况下它不会发生,只是提一下,因为如果它对 SEO 不利,那么对您的用户来说可能不是那么好。)
请注意,RewriteRule 的正则表达式和之前的条件要求这两个查询字符串参数按照该顺序排列。您需要多行才能不强制执行订单。但我想这不是问题。