如何在 htaccess 中将 Microsoft Edge 与 Chrome 分开?

How to separate Microsoft Edge from Chrome in htaccess?

我的 .htaccess 文件中有这个:

RewriteEngine on

RewriteCond %{HTTP_USER_AGENT} Chrome
RewriteRule ^(.*)$ page.php [NC,L]

Microsoft Edge 浏览器认为它是 Chrome 并转到 page.php。有没有办法避免Edge使用Chrome命令,所以它不会去page.php?

我在谷歌上搜索了很多,但我还没有找到任何如何引导 Edge 浏览器的信息。有什么帮助吗?谢谢!!

Edge user agent 中有 Edge 一词,例如

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.

它也有单词 Chrome,所以在 Chrome 之前放置一个 Edge 的重写规则。

请注意,这是 done intentionally(感谢@Axalix 提供 link)

Many websites that you visit today will not display well in IE because they are not coded properly and usually display a page like they would in an old browser, even though Internet Explorer 11 supports many of the new web standards. Some pages will display incorrectly in IE while working perfectly fine on other browsers such as Chrome or Firefox.

因此,您可能不希望以与 Chrome 不同的方式对待 Edge。当然不要随便假设它就像一个新版本的IE。

Is there any way to avoid Edge from using the Chrome command, so it would not go to page.php?

这不是命令,而是浏览器发送的用户代理 header。不,您不能阻止 Edge 浏览器发送他们发送的用户代理。