由于臭名昭著的 IIS 错误与“Location”重定向标头有关,我们必须改用“Refresh”标头。
所以,我想知道以编程方式检测 PHP 脚本是否在 IIS 下运行的最佳方法。
目前使用的方法是DIRECTORY_SEPARATOR !== '/'
,但显然 Apache 和 Windows 下的其他服务器被错误识别为 IIS。
我想过:
strpos($_SERVER['SERVER_SOFTWARE'], 'Microsoft-IIS') !== false
...但是该元素对应于 HTTP 响应的“Server”标头,并且可能已通过各种方式将其删除。
任何更健壮的方法的想法?