.htaccess 使用查询字符串重定向 url 到其他页面 + 查询字符串

.htaccess redirect url with query string to other page + query string

我的 .htaccess 文件遇到问题,而且我对 PHP 的了解有限,我似乎无法解决这个问题。

目标:我想重定向进入我的主页但具有查询字符串的流量,以便在查询字符串完好无损的情况下重定向到另一个页面。像这样:

https://www.mywebpage.com/?wd8RL4T6Q00&17.07&52LJqY-emLU&0

https://www.mywebpage.com/player.html?wd8RL4T6Q00&17.07&52LJqY-emLU&0

用户只能看到第一页和下面的页面,如 (https://www.mywebpage.com/howto.html) 仍然必须可以访问。

在伪代码中(但有点像 javascript ;)我的解决方案是这样的:

if (querystring) {
  redirect to './player.html' + querystring
}

我尝试过的:

RewriteEngine On
RewriteCond %{QUERY_STRING} (.*)
RewriteRule player.html  %1

但这似乎以某种方式重定向了所有流量.. 提前感谢您的帮助!

您当前的 RegExp 正好匹配所有内容。这就是 .* 的意思。相反,如果您希望查询字符串至少有 1 个字符,您可以将其更改为 .+。我认为这可以解决您当前的问题。

然后,对于重定向:

RewriteEngine On
RewriteCond %{QUERY_STRING} (.+)
RewriteCond %{REQUEST_URI} ^/?$
RewriteRule .* /player.html [L]