Что такое формат файла BROWSER?
Файл .browser - это конфигурационный файл XML, используемый ASP.NET (версии от 2.0 до 4.x) для определения возможностей браузера. Он сопоставляет шаблоны строк User-Agent с набором флагов возможностей - поддержка JavaScript, уровень CSS, обработка cookies, размеры экрана - которые среда выполнения ASP.NET использует для адаптации серверного вывода под конкретных клиентов.
Файл следует иерархической схеме с корневым элементом <browsers>, содержащим дочерние элементы <browser>. Каждый элемент объявляет шаблон регулярного выражения User-Agent, опционально наследует определение от родительского браузера через parentID и перечисляет пары «ключ-значение» для возможностей. Файлы хранятся в папке App_Browsers/ внутри веб-проекта (переопределения на уровне приложения) или в общесистемном каталоге по адресу %windir%\Microsoft.NET\Framework\v4.0.30319\CONFIG\Browsers\.
При запуске приложения ASP.NET компилирует все файлы .browser в класс BrowserCapabilitiesFactory. Этот механизм заменил старый раздел <browserCaps> в web.config с выходом ASP.NET 2.0 в ноябре 2005 года.
Эта система устарела, так как идентификация по User-Agent оказалась ненадежной в условиях многообразия браузеров и устройств. В ASP.NET Core и .NET 5+ механизм BrowserCapabilities был полностью удален в пользу обнаружения функций на стороне клиента. Существующие файлы .browser остаются актуальными только для приложений, по-прежнему использующих .NET Framework 4.x на IIS.
Безопасность и защита
РИСК: LOWТекстовый файл XML без исполняемого кода; содержит только данные конфигурации. Известных рисков безопасности при просмотре или редактировании нет. В худшем случае некорректные записи повлияют на определение браузера на стороне сервера.
Детали формата
в двух словахПрограммы, открывающие файлы BROWSER
Технические подробности
глубокая спецификация| Формат | XML (обычный текст UTF-8) |
| Корневой элемент | <browsers> |
| Дочерний элемент | <browser> - атрибуты: id, parentID, defaultStateID |
| Сопоставление User-Agent | Шаблоны Regex, объявленные в дочерних элементах <identification> |
| Хранение возможностей | Пары «ключ-значение» в дочерних элементах <capabilities> (JavaScript, CSS, cookies, размеры экрана и т. д.) |
| Наследование | Записи браузеров наследуют родительские определения через атрибут parentID |
| Путь на уровне системы | %windir%\Microsoft.NET\Framework\v4.0.30319\CONFIG\Browsers\ |
| Путь на уровне приложения | Папка App_Browsers\ внутри веб-проекта ASP.NET |
| Компиляция | ASP.NET компилирует файлы .browser в класс BrowserCapabilitiesFactory при запуске приложения |
| Версия схемы | ASP.NET 2.0+ использует файлы .browser; предшественник 1.x использовал <browserCaps> в web.config |
| Связанная ОС | Windows (IIS + ASP.NET .NET Framework) |
| Типичный размер файла | 1 КБ - 50 КБ |
| Устарело в | .NET Core / .NET 5+ - механизм BrowserCapabilities полностью удален |
| Замена | Обнаружение функций на стороне клиента через нативные API браузера и библиотеки, такие как Modernizr |
| Выпущен | ASP.NET 2.0 (2005) |
| Последняя версия | ASP.NET 4.x (last significant update; deprecated in .NET Core/.NET 5+) |
| Спецификация | learn.microsoft.com |
Конвертации BROWSER
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах BROWSER.