Some websites are designed to work correctly only with certain browsers, and some sites will not even let you access them unless you are using one of their approved browsers. All browsers provide information about their identity that can be queried by websites and computer programs, but it is not normally visible.
This Web page (and the separate pages for identifying Opera 5 to 27 and identifying Safari) makes the information about the identity of your browser visible, attempts to determine the name and version of your browser, and attempts to determine whether it is spoofing.
If your browser could not be identified, or if it was identified incorrectly, then please send me a message so that I can try to improve the identification.
Some Web browsers can be configured to supply identification that belongs to other browsers, a process known as spoofing. This can allow browsers to access websites that attempt to restrict access to specified browsers. Perfect spoofing would be impossible to detect.
Safari always identifies its vendor as Apple, and this always allows it to be detected when it pretends to be Internet Explorer or other browsers, but not when it pretends to be other versions of Safari.
To set up spoofing, the Develop menu needs to be made visible:
Then choose a User Agent:
The last independent version of the Netscape Web browser was version 4; versions 6, 7, 8 and 9 were really Mozilla or Firefox browsers with a skin applied to change their appearance (version 5 was not released). They always identified themselves as Netscape in the userAgent, and so they were simple to detect.
There have been several skins for Internet Explorer, such as AM Browser, Avant Browser, Deepnet Explorer and Maxthon, but none of them have been widely used. They identify themselves in the userAgent, and so they are simple to detect.
else if (navigator.userAgent.toLowerCase().indexOf("firefox/2") != -1 && navigator.userAgent.toLowerCase().indexOf("navigator") == -1 && navigator.userAgent.toLowerCase().indexOf("opera") == -1)
document.write("<p><strong>Your Web browser appears to be Firefox version 2<\/strong><\/p>");
This type of identification is not completely accurate, especially when browsers pretend to be other browsers, but it works most of the time.