从用于检索 CSS 的 PHP 文件中获取用户的用户代理字符串
Get the user agent string of the user from a PHP file used to retrieve a CSS
在 HTML 页面中,我有以下内容:
<link rel='stylesheet' href='retrievedCSS.php' type='text/css' media='all' />
在 retrievedCSS.php
中,我从 CDN 请求 CSS 资源,然后 return 将其发送给客户端。
问题是 CDN 相当 "dynamic",所以如果我直接使用浏览器的地址栏执行 retrievedCSS.php
,我会根据其 user-agent
字符串获得不同的资源。
但是,在我的例子中,是服务器向 CDN 请求资源,而不是客户端。
除了从 HTML 页面将其附加为参数 (retrievedCSS.php?ua=myUserAgent
) 之外,还有其他方法可以获得加载 HTML 的用户的用户代理字符串retrievedCSS.php
?
中的页面
您可以使用变量 $_SERVER['HTTP_USER_AGENT']
访问用户代理字符串
当您访问网页时,您的浏览器会将 User-Agent
添加到请求 HTTP header 中。由于 CSS 文件只是通过 HTTP 请求的另一个资源,您应该能够通过以下方式访问 PHP 文件中的 header:
$_SERVER['HTTP_USER_AGENT']
你可以阅读它in the PHP docs。
编辑:这甚至应该适用于您的动态 CSS 文件,因为浏览器正在向所有 HTTP 请求添加 header。
get_browser() function. But it requires browscap.
在 HTML 页面中,我有以下内容:
<link rel='stylesheet' href='retrievedCSS.php' type='text/css' media='all' />
在 retrievedCSS.php
中,我从 CDN 请求 CSS 资源,然后 return 将其发送给客户端。
问题是 CDN 相当 "dynamic",所以如果我直接使用浏览器的地址栏执行 retrievedCSS.php
,我会根据其 user-agent
字符串获得不同的资源。
但是,在我的例子中,是服务器向 CDN 请求资源,而不是客户端。
除了从 HTML 页面将其附加为参数 (retrievedCSS.php?ua=myUserAgent
) 之外,还有其他方法可以获得加载 HTML 的用户的用户代理字符串retrievedCSS.php
?
您可以使用变量 $_SERVER['HTTP_USER_AGENT']
访问用户代理字符串当您访问网页时,您的浏览器会将 User-Agent
添加到请求 HTTP header 中。由于 CSS 文件只是通过 HTTP 请求的另一个资源,您应该能够通过以下方式访问 PHP 文件中的 header:
$_SERVER['HTTP_USER_AGENT']
你可以阅读它in the PHP docs。
编辑:这甚至应该适用于您的动态 CSS 文件,因为浏览器正在向所有 HTTP 请求添加 header。
get_browser() function. But it requires browscap.