Firefox Profile als eigene Prozesse starten

Firefox LogoWer kennt das nicht? Firefox stürzt ab oder lahmt ein wenig. Da bleibt oft nur der Kill des Prozesses, denn die Fehler kommen häufig von den zahlreich installieren Add-Ons die nur nach einem Neustart wieder Ihren Dienst tun. Zudem sind dann auch noch tausend Tabs geöffnet, die nicht jedes mal wiederhergestellt werden können.

Damit nicht alles vor „die Hunde“ geht, hab ich mir jetzt die Variante mit mehreren Profilen als eigenständige Prozesse angewöhnt. Mit folgender Einstellung im Starter von Firefox:

Der Parameter -no-remote verursacht, das Firefox jeweils einen eigenen Prozess für das Profil erzeugt. Der Parameter -p öffnet die Profilauswahl. Das kann man sich auch sparen, wenn der Profilname mitgegeben wird. Mit -p „PROFILNAME“ startet das angegebene Profil sofort. Die Parameter funktionieren unter Windows, Linux und Mac OS X.

Ich habe mir für verschiedene Tätigkeiten die entsprechenden Profile angelegt. Diese enthalten jeweils nur die benötigten Add-Ons damit der Firefox nicht so aufgebläht wird.

Makros in der Windows Eingabeaufforderung (cmd.exe)

Die DOSKey Funktionen unter Windows bieten nicht nur Funktionen zur Verwaltung der Historie. Es ist auch möglich mehrere Befehle in einem Makro zu nutzen. Das folgende Beispiel zeigt wie das Neustarten des Apache Dienst unter Verwendung des net … Befehls vereinfacht werden kann.

Makro erstellen:

c:\> doskey apache-restart=net stop apache2.2$Tnet start apache2.2

Makro ausführen:

c:\> apache-restart

Es geht natürlich auch komplexer: Dieses Beispiel soll nur die Funktion verdeutlichen.

Einen entschiedenen Nachteil gibt es aber: wird das Programm (cmd.exe) beendet, sind auch die Macros weg. Für diesen Fall kann man sich die Macros in eine Datei speichern und wie folgt beim nächsten mal wieder verwenden.

Makros aus Datei laden:

c:\> doskey /macrofile=c:\datei-mit-den-gespeicherten-macros.txt

Weitere Informationen zum Thema:
http://en.wikipedia.org/wiki/DOSKey

Historie in der Windows Eingabeaufforderung (cmd.exe)

Historie in cmd.exeBei der Verwendung der Eingabeaufforderung (cmd.exe) unter Windows ist sicherlich jedem bekannt, dass mit den Pfeiltasten die bereits verwendeten Befehle durchblättert werden können. Was nicht jedem bekannt ist sind die „alte“ DOSKey Funktion.

Damit ist es z.B. möglich mit der Taste F7 die Historie in einer On-Screen-Liste übersichtlich dargestellt zu bekommen. Alt+F7 löscht die Einträge wieder. Mittels F9 kann direkt ein Befehl in der Historie gewählt werden.

Eine Vollständige Liste findet man in der Hilfe des DOSKey Befehls.

Weitere Informationen zum Thema:
http://en.wikipedia.org/wiki/DOSKey

HTTP Komprimierung via PHP (ohne mod_gzip)

Sollte man auf seinem Server/Webspace kein mod_gzip zur Verfügung haben, so kann man die HTTP Komprimierung z.B. auch von PHP übernehmen lassen. Nachteil ist allerdings, das dadurch die CPU Last erhöht wird.

Einfach in die .htaccess Datei die folgende Zeile einfügen:
[text]php_value output_handler ob_gzhandler[/text]

Alternativ kann es auch direkt im PHP Code eingetragen werden:
[php]<?PHP
// Im Header
ob_start(“ob_gzhandler”);

// PHP Code

// Am Ende noch
ob_end_flush();
?>
[/php]

.htpasswd unter Xampp (Windows)

Auf Testsystemen sollte eigentlich die selbe Umgebung wie im Produktivsystem existieren. Wenn nicht auf virtuelle Maschinen gesetzt wird, kann das schon recht schwierig sein. Zum Entwickeln von Webanwendungen reicht aber auch ein „Normaler PC mit Windows“ und Xampp Installation.

Um dort nun einen Passwortschutz zu einzurichten sollte die .htaccess in etwa so aussehen:

AuthUserFile C:\xampp\htdocs\pass.txt
AuthName "Geschützter Bereich"
AuthType Basic
<Limit GET POST>
Require valid-user
</Limit>

Die .htpasswd kann so erstellt werden:

C:\xampp\apache\bin>htpasswd -bc C:\xampp\htdocs\pass.txt USER PASS
Automatically using MD5 format.
Updating password for user USER

!!! Wichtig !!!

Auf keinen Fall sollte dieses Beispiel in einem Produktivsystem zum Einsatz kommen! Die Datei .htpasswd sollte immer ausserhalb des DocumentRoot liegen!