Home, FAQ, Terms of Use, Downloads, Your Browser, User Agent Checker, Contact Me
Microsoft had a good idea when they created browscap.dll and browscap.ini to use with their web server for browser identification.
In theory someone at Microsoft would routinely update the browscap.ini file and make it available to its customers. As a result we would all have reliable browser identification in order to know exactly what features the client's browser supports.
Sadly, Microsoft never made any attempt to keep the file up to date.
There was a brief wellspring of volunteers who did a good job of maintaining browscap.ini for awhile. Those sources are now either intentionally out of date as a way to drive product sales, or no longer exist. I can't blame them for giving up as this is not an easy project to maintain.
Here is what I do as part of my Browser Capabilities Project.
Shortly after midnight on Sunday morning the website log files for this site and over thirty other sites of various types are downloaded for analysis. Once downloaded the log files are analyzed on a number of levels. Over the years I have developed a number of systems for automatically collecting the data I need for further analysis. The vast majority of new user agents each week are variations on existing user agents in my database, so when the analysis is complete I usually wind up with around two dozen truly new and unique user agents to investigate. I typically do my research on Sunday afternoon and only a few new user agents are eventually added to the files in any given week.
In the pre-dawn hours of Monday morning a test program that takes several hours to run checks to be sure any new user agents are recognized properly and that I haven't inadvertently made any changes in the user agent patterns that would negatively affect accurate recognition. I usually deal with the results of this test on Monday morning.
I hope it's good to know I take the time to validate what I do to ensure as much accuracy as possible.
User agent detection is still a long ways away from being 100% accurate though because there will always be new user agents that aren't in the files yet and hence won't be properly identified. And there are also the bugs in both browscap.dll and get_browser() to contend with.
Approximately once a week, usually sometime on Monday afternoon, the raw data in my database is compiled into various reports, including the all-important browscap.ini file for browser identification, and gets uploaded to my website.
The files are freely available for download so long as you abide by my Terms of Use.
Backward compatibility with the classic browscap.ini format has been preserved. However I am also gradually increasing support for the properties one might expect to find when using the HttpBrowserCapabilities class in ASP.NET.
I supported several of those properties long before ASP.NET came along, but I used different property names than Microsoft wound up choosing. So there's a bit of duplication in the files right now while I include my original, and now deprecated property names, plus the new ASP.NET-style property names.
Although targeted for Microsoft's web servers, IIS 5 and later, PHP can use the files as its data source in the get_browser() function. I am PHP's officially recommended source for that file. Due to the way PHP parses .ini files you will need to use my special version of browscap.ini for PHP, php_browscap.ini. My downloads page has links to several sites that offer PHP classes which do not depend on the native get_browser() function, or PHP's flaky .ini parser, or my special version of the files for accurate results. These classes have the added benefit of letting you define where the browscap.ini file should go, which is perfect for shared hosting environments where the host does not maintain an updated browscap.ini file for you.
While Microsoft has abandoned browscap.ini as a means of browser detection in favor of more sophisticated and better methods, there are still a large number of people who continue to rely upon browscap.ini for all sorts of purposes. The files are used for everything from browser detection to web stats reports and more. With the data from my database being available in so many different formats it's easy to use it in any situation where accurate user agent detection is important.
The Browser Capabilities Project has a long and bright future ahead of it to compliment its already long history of service to the web development community since 1998.
Last updated November 11, 2006.
Home, FAQ, Terms of Use, Downloads, Your Browser, User Agent Checker, Contact Me
Website © 1998, 2008 BlazerTech Corporation