Mozilla Firefox User-Agent文字列の解析
Firefox User-Agent文字列を解析して、ブラウザバージョン、Geckoエンジンバージョン、OSを抽出します。Windows、macOS、LinuxでのFirefoxをカバー。
Desktop Browsers
詳細な説明
Firefox User-Agent文字列の理解
FirefoxはChromiumベースのブラウザとは明確に異なるUA文字列フォーマットを持っています:
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:121.0) Gecko/20100101 Firefox/121.0
トークン解析
- Mozilla/5.0 — 共通の互換性プレフィックス。
- (Windows NT 10.0; Win64; x64; rv:121.0) — プラットフォーム情報とGeckoリビジョン番号(
rv:121.0)。rv値は通常Firefoxバージョンと一致します。 - Gecko/20100101 — レンダリングエンジン。Blink(WebKitとして報告)を使用するChromeとは異なり、FirefoxはMozillaのGeckoエンジンを使用します。日付
20100101は固定されており変更されません。 - Firefox/121.0 — 実際のFirefoxバージョン番号。
ChromeのUAとの主な違い
- Firefoxはプラットフォーム括弧内にrv:VERSIONを含む
- FirefoxはエンジンとしてGeckoを報告し、AppleWebKitではない
- FirefoxはSafariやChromeトークンを含まない
- UAフォーマットが大幅に短く、クリーン
macOSでのFirefox
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:121.0) Gecko/20100101 Firefox/121.0
macOSバージョンはFirefoxではドット(10.15)を使用しますが、ChromeやSafariのUA文字列ではアンダースコア(10_15_7)を使用することに注意してください。
プライバシーへの配慮
MozillaはプライバシーイニシアチブのしてFirefoxのUA文字列の情報を徐々に削減しています。将来のバージョンではフィンガープリンティングの表面積を減らすために特定のトークンがさらに固定される可能性があります。
ユースケース
QAチームがFirefoxのUA文字列を解析して、特にGeckoとWebKit/Blinkエンジンで異なる動作をする機能のクロスブラウザ互換性を検証します。アナリティクスプラットフォームはFirefoxバージョン検出を使用して、CSS Container QueriesやPopover APIなどの新しいWeb標準の採用率を測定します。