Wie kann man per user.js einen anderen User Agent String setzen ?

  • Firefox-Version
    95.0.1
    Betriebssystem
    Linux Mint 64, Cinnamon Desktop, wie Gnome

    * Einstellungen die man über about:config einstellen kann, kann man erfahrungsgemäß auch über die Datei user.js konfigurieren:
    * Die Werte die über die user.js Datei an den FF übergeben werden, gelten sofern sie von denen über die about:config konfiguriert abweichen, vorrangig vorr denen die in in about:config gemacht wurden bzw. einsehbar sind.

    * Der Speicherort der user.js ist unter Ubuntu der folgende:

    Code
    /home/user/.mozilla/firefox/xxxxxxxx.default*/user.js

    Die Syntax der user.js ist laut http://kb.mozillazine.org/User.js_file z.B. wie folgt:

    Code
    // Don't show bookmark icons
    user_pref("browser.chrome.site_icons", false);

    Wie kann man per user.js einen anderen, wie z.B. den folgenden User Agend String per user.js setzen:

    Mozilla/5.0 (Windows NT x.y; Win64; x64; rv:10.0) Gecko/20100101 Firefox/10.0

    Quelle des als Beispiel verwendeten User Agent Strings:

    Firefox user agent string reference - HTTP | MDN
    This document describes the user agent string used in Firefox 4 and later and applications based on Gecko 2.0 and later. For a breakdown of changes to the…
    developer.mozilla.org

    Das man User Agent Strings aus durch Add Ons wie z.B. dem User Agend Switcher ändern kann ist bekannt, jedoch nicht Gegenstand der Frage.

    Den User Agent String den ein Browser an eine Webseite überträgt, kann man sich z.B. auf folgender Webseite anzeigen lassen:

    What is my user agent?
    Every request your web browser makes includes your User Agent; find out what your browser is sending and what this identifies your system as.
    www.whatismybrowser.com

    2 Mal editiert, zuletzt von Alfredo534 (12. Januar 2022 um 01:04)

  • Zur hilfreichsten Antwort springen
  • Hallo,

    wieso möchtest du überhaupt den User-Agent verändern? Da man auf diese Weise viele Probleme erzeugen kann, betrachte ich die Antwort darauf als entscheidend, bevor ich mehr dazu schreibe. Nicht jeder ist sich nämlich dessen bewusst und dann wundert sich mancher ein paar Wochen später, wieso die Seite XY nicht ordentlich in Firefox funktioniert. Daher möchte ich erst einmal den Anwendungsfall verstehen, weil es möglicherweise ja auch einen besseren Weg gibt, um das Ziel zu erreichen.

  • Hallo,

    wieso möchtest du überhaupt den User-Agent verändern?

    Es gibt eine eigene Webseite die ich gelegentlich mit einem durch mich einstellbaren User Agent String ansprechen möchte. Das man das auch mit bestimmten spezialisierten steuerbaren Browserversionen machen kann ist mir bekannt. Ich möchte dies jedoch über einen normalen Firefox und die user.js Datei machen, obwohl es noch andere mögliche Wege gibt, da das für meine Zwecke ausreichend und für mich übersichtlicher ist und ich bereits andere von mir gewünschte Einstellungen, über die user.js mache und das so beibehalten möchte.

    Einmal editiert, zuletzt von Alfredo534 (12. Januar 2022 um 01:54)

    • Hilfreichste Antwort

    Wie kann man per user.js einen anderen, wie z.B. den folgenden User Agend String per user.js setzen:

    Mozilla/5.0 (Windows NT x.y; Win64; x64; rv:10.0) Gecko/20100101 Firefox/10.0

    Mit folgender Zeile:

    user_pref("general.useragent.override", "Mozilla/5.0 (Windows NT x.y; Win64; x64; rv:10.0) Gecko/20100101 Firefox/10.0");

  • Wie kann man per user.js einen anderen, wie z.B. den folgenden User Agend String per user.js setzen:

    Mozilla/5.0 (Windows NT x.y; Win64; x64; rv:10.0) Gecko/20100101 Firefox/10.0

    Mit folgender Zeile:

    user_pref("general.useragent.override", "Mozilla/5.0 (Windows NT x.y; Win64; x64; rv:10.0) Gecko/20100101 Firefox/10.0");

    Besten Dank.

    Das schöne an einer Lösung per user.js ist:
    * das die Reihenfolge von Einträgen in der user.js keine Rolle spielt
    * das wenn man einen Eintrag in dieser auskommentiert, beim Start des FF wieder automatisch der originale unveränderte und im FF selbst hinterlegte Eintrag verwendet wird

    Einmal editiert, zuletzt von Alfredo534 (12. Januar 2022 um 12:05)

  • Alfredo534 12. Januar 2022 um 11:46

    Hat einen Beitrag als hilfreichste Antwort ausgewählt.
  • aber nicht für andere Änderungen

    So ist es und soweit ich weiß wird auch der User-Agent nicht zurückgesetzt und siehe da, der ↓ Test zeigt es nach dem Umbenennen der user.js und Neustart von Fx.

    Es grüßt,

    Ralf

  • wenn man einen Eintrag in dieser auskommentiert, beim Start des FF wieder automatisch der originale unveränderte und im FF selbst hinterlegte Eintrag verwendet wird

    Dem ist leider nicht so.

    Das mag für den User-Agenten passen (ungetestet), aber nicht für andere Änderungen ;)

    Zum zurück setzen auf den default user agent sagt schreibt Mozilla auf folgender Seite etwas:

    * https://support.mozilla.org/en-US/kb/how-r…r-agent-firefox

    * https://web.archive.org/web/2022011211…r-agent-firefox

  • Einträge in der user.js wurden schon immer dauerhaft übernommen, falls danach nicht anderweitig geändert.

    Sören hat nach dem speziellen Anwendungsfall gefragt, welche Webseite ist es denn nun?

    Wir sind keine Beschwerdestelle, hier gibt es nur Lösungen! Meine Glückszahl hier: 93.

  • Gut, dass ich nach dem Grund gefragt habe. Eine vorgeschlagene Lösung wie die oben markierte halte ich für grob fahrlässig. Es hat schon einen Grund, wieso diese Option standardmäßig nicht mal in about:config sichtbar ist und Mozilla selbst eine Unternehmensrichtlinie dafür abgelehnt hat. Damit wird der User-Agent für ausnahmslos alle Seiten geändert. Und das wird nicht nur für Probleme auf diversen Websites sorgen, die für den Nutzer teilweise bemerkbar sind, teilweise aber auch nicht, auch die Privatsphäre wird dadurch verschlechtert. Dazu der bereits beschriebene Umstand, dass man selbst an das Zurücksetzen denken muss und das eben nicht automatisch passiert, wenn man die Zeile aus der Datei user.js löscht.

    Wenn es wirklich nur um eine bestimmte Website geht, ist er User-Agent höchstens für diese gezielt zu verändern, aber um Gottes Willen nicht global. Und dafür gibt es Erweiterungen, die einem dabei helfen. Das ist in jedem Fall dem vorgeschlagenen Weg via user.js vorzuziehen. Das ganze Konstrukt rund um den User-Agent ist extrem fragil, weswegen Änderungen immer nur ein Notfall-Plan sein können und gezielt eingesetzt werden sollten.

  • Gut, dass ich nach dem Grund gefragt habe.

    Der TE fragte explizit nach einer Lösung für die 'user.js' und hat dies mit (dem Testen?) einer eigenen Webseite begründet. Er betonte auch extra noch, dass er die Add-Ons-Lösungen kennt, aber aus welchem Grund auch immer, nicht nutzen möchte. Dass er von der irrigen Annahme ausging, dass sich durch Löschen des Eintrages in der 'user.js', auch die Voreinstellung wiederherstellt, hat er erst später gepostet. Eine Möglichkeit, den User-Agenten nur für bestimmte URLs zu ändern, kenne ich auch nur von Add-Ons und ist mir für 'http://user.js/about:config' nicht bekannt, falls das überhaupt gehen sollte :/.

    PS: Falls du die Lösung wirklich für "grob fahrlässig" hältst, dann habe ich überhaupt kein Problem damit, meine Antwort wieder zu löschen, oder du löscht/editierst sie.

  • Der TE fragte explizit nach einer Lösung für die 'user.js'

    Deine Lösung ist genau das wonach ich gesucht habe.
    Besten Dank dafür.

    Manch anderer mag eine andere Lösung für sich bevorzugen. Warum nicht.
    Soll jeder die Lösung verwenden die ihm selber am besten gefällt. Für mich

    ist genau diese Lösung perfekt für mich.

    Nochmals besten Dank dafür von mir.

  • Der TE fragte explizit nach einer Lösung für die 'user.js' und hat dies mit (dem Testen?) einer eigenen Webseite begründet. Er betonte auch extra noch, dass er die Add-Ons-Lösungen kennt, aber aus welchem Grund auch immer, nicht nutzen möchte.

    Das ist richtig, aber es kommt immer wieder mal vor, dass jemand nach einer konkreten Maßnahme fragt, in den Glauben, dass es der beste Weg zur Lösung eines Problems wäre, und gar nicht klar ist, dass es einen besseren Weg gibt oder was gegen den angedachten Weg spricht. Wenn man als Hilfegebender weiß, wo hier Gefahren lauern, finde ich es grundsätzlich wichtig, den konkreten Anwendungsfall überhaupt erst einmal verstanden zu haben. Hier war der Anwendungsfall nicht klar. Darum habe ich zunächst nachgefragt. Das Problem ist nämlich leider auch, dass wenn man sofort mit einer Lösung rausrückt, eine Nachfrage oft unbeantwortet bleibt, weil die fragende Person dann unter Umständen gar nicht mehr ins Forum schaut. Dann bleiben die Probleme im schlechtesten Fall unbekannt. Sowas möchte ich natürlich vermeiden. Und die Antwort hat mich in meiner Frage bestätigt, weil nach der Antwort klar war, dass hier Dinge zu nennen sind, die noch nicht genannt wurden.

    PS: Falls du die Lösung wirklich für "grob fahrlässig" hältst, dann habe ich überhaupt kein Problem damit, meine Antwort wieder zu löschen, oder du löscht/editierst sie.

    So weit müssen wir nicht gehen. Ich ordne meine Aussage gerne etwas ein: Die Fahrlässigkeit in diesem konkreten Fall sehe ich vor allem darin, eine Lösung zu geben, ohne dass diese mit einer Warnung darüber einhergeht, wieso dieser Weg problematisch ist. Hier geht es jetzt nicht darum, dass die Sicherheit gefährdet wird oder so. Etwas, was in diesem Sinne fahrlässig wäre, sollte gelöscht werden. Hier ging es um Aufklärung. Die Argumente wurden noch genannt und auch wahrgenommen, also ist alles gut. ;)

    Soll jeder die Lösung verwenden die ihm selber am besten gefällt. Für mich

    ist genau diese Lösung perfekt für mich.

    Inwiefern genau ist es "perfekt", dass du den User-Agent für ausnahmslos alle Websites veränderst, wenn es doch nur um eine einzige Seite gehen soll? Und vor allem: Was genau spricht gegen eine Erweiterung, die das Problem tatsächlich perfekt lösen kann und dir die Aufgabe sogar erleichtert?