Browser und Betriebssystem feststellen

Gelegentlich kommt es vor, dass Kunden einen Fehler oder ein seltsames Aussehen der für sie gestalteten Website melden. Zum Beispiel laufen Schriften in verschiedenen Browsern oder unter verschiedenen Betriebssystemen verschieden breit, wenn auch nur geringfügig. Und der Kunde meldet dann unschöne Zeilenumbrüche. Außerdem gibt es immer mal wieder Bugs in der einen oder anderen Browserversion.

Frage ich dann die Kundin oder den Kunden, welchen Browser sie oder er genau hat, kann mir oft genug keine Auskunft gegeben werden. Nun kann man zwar am Telefon durchgeben, wo diese Angaben zu finden sind – einfacher und schneller ist es aber womöglich, den Kunden zu bitten, folgenden URL aufzurufen: https://whichbrowser.net/. Dort werden Browser, Browserversion und Betriebssystem angezeigt, also etwa You are using Opera 39.0 on Windows 10.

Which Browser?

Austausch der Windows®-Systemfestplatte gegen ein SSD

Kürzlich habe ich eine defekte Festplatte gegen ein SSD (Solid State Drive) ausgetauscht. Die Anforderung war die, dass es sich um die Systemfestplatte mit Windows® als Betriebssystem handelte und ich natürlich nicht alles neu installieren wollte. In den beigelegten Unterlagen zu dem neuen Speichermedium von Toshiba stand der Hinweis, man könne eine kostenlose Software herunterladen, die bei so einem Umzug helfe.

Dieses Programm heißt Echo und ist von dem System-Tools-Hersteller NTi, den ich vorher noch nicht gekannt hatte. Die kostenlose Version funktioniert nur mit einem SSD- oder HDD-Laufwerk von Toshiba als Zielmedium, aber eine Vollversion für herstellerunabhängige Datenträger kostet nur 15 US-Dollar.

Folgendermaßen bin ich vorgegangen: Programm installiert, PC ausgeschaltet, neue SSD an einen freien SATA-Port angeschlossen, PC hochgefahren und das Programm gestartet. Es hat eine ordentlich aussehende Benutzeroberfläche. Hier kann man einstellen, was wohin geklont werden soll.

NTi Echo

Anschließend fährt der Computer herunter, startet neu und das Klonen wird begonnen. Nachdem der Vorgang fertig ist, kann man den PC herunterfahren und ausschalten, die alte HDD ausbauen und die neue SSD an den SATA-Port hängen, wo sich die bisherige HDD befunden hatte.

Auf diese Weise war mein System nach dem Festplatten-Umbau schnell wieder startklar. Denn NTi Echo arbeitete zügig und fehlerfrei. Natürlich gibt es von verschiedenen anderen Herstellern ähnliche Programme; aber von der unkomplizierten Handhabung der hier beschriebenen Software war ich doch sehr angetan.

Sichere E-Mail-Provider

Nicht jeder möchte seinen E-Mail-Verkehr großen Unternehmen oder Konzernen anvertrauen. Durch einen Artikel bei Chip.de, auf den ich zufällig gestoßen bin, wurde ich darauf aufmerksam gemacht, dass es durchaus Alternativen gibt. Vorgestellt werden Anbieter, die – zumindest nach deren eigenen Aussagen – größten Wert auf Sicherheit und Privatsphäre legen. Ich habe mir deren Websites einmal selber angeschaut, ohne mich allerdings anzumelden und deren Dienste zu testen.

Posteo

Posteo kostet einen Euro pro Monat und ist werbefrei, arbeitet mit Verschlüsselung und verwendet grünen Strom von Greenpeace. Kalender und Adressbuch sind auch dabei. Der Speicherplatz beträgt 2 GB. Die Anmeldung ist möglich ohne Angabe persönlicher Daten und die Beiträge kann man anonym zahlen. Posteo sitzt in Berlin.

aikQ

aikQ kostet ebenfalls einen Euro im Monat, anonyme Anmeldung und Bezahlung sind auch hier möglich. Der Speicherplatz beträgt hier 10 GB. Kalender und Adressbuch konnte ich bei aikQ nicht ausfindig machen. Dafür wird eine Onlinefestplatte mit Freigabe geboten. aikQ ist ein Projekt von DOTinbox LTD in England, der Server wird allerdings von Speedloc Datacenter im deutschen Görlitz betrieben.

JPBerlin

JPBerlin hat ihren Sitz in Berlin und bezeichnet sich selbst als »politischer Betreiber«. Was das bedeutet, wird so erklärt: »Wir geben politisch und sozial aktiven Verbänden die technische Infrastruktur, die sie brauchen, um ihnen die Arbeit mit modernen Mitteln, wie Groupwaresystemen oder Mailinglisten, zu ermöglichen.« Auch hier kostet der E-Mail-Dienst, verschlüsselt und werbefrei, einen Euro pro Monat. JPBerlin bietet neben dem Mail-Postfach noch weitere Leistungen, nämlich Mailinglisten, Webhosting und Root-Server. Das Büro wird mit Ökostrom von Lichtblick betrieben, auch die Server im Berliner Rechenzentrum werden mit Ökostrom betrieben.

Autistici/Inventati

Ebenfalls politisch geht es zu bei Autistici/Inventati: »Die Grundidee besteht darin, freie und kostenlose Kommunikationsmittel im großen Maßstab bereitzustellen, um so die Menschen dazu zu bewegen, sich für freie statt für kommerzielle bzw. proprietäre Kommunikationsweisen zu entscheiden.« Die angebotenen Dienste umfassen: Blogs/Web-Hosting, Anonymisierungsdienste/Persönliche VPNs, E-Mail-Konten/Mailinglisten, Newsletter und Foren, Instant-Messaging und Chat. Das Projekt wird über Mitgliedsbeiträge und Spenden finanziert. Eine kommerzielle Nutzung der Dienste ist unerwünscht. Seinen Ursprung hat das Projekt in Italien.

Riseup

Und auch Riseup ist politisch motiviert: »Riseup bietet Online-Kommunikationstools für Menschen und Gruppen an, die an einem freien gesellschaftlichen Wandel arbeiten. Wir sind ein Projekt, das demokratische Alternativen entwickelt und wir üben Selbstbestimmung aus, indem wir unsere eigenen sicheren Kommunikationswege kontrollieren.« Riseup bietet E-Mail, Mailinglisten, Chat, VPN und das Kollaborationswerkzeug Etherpad. Die Dienste sind kostenlos, aber es wird um Spenden gebeten. Auch hier wird mit Verschlüsselung gearbeitet und die IP-Adresse wird nicht in die E-Mail eingebunden. Der Sitz von Riseup ist in Seattle, USA.

Das sind ganz sicher nicht alle alternativen Anbieter, die es gibt, denn zum Beispiel werden bei Autistici/Inventati noch etliche weitere freiheitliche Technik-Gemeinschaften genannt. Jedenfalls fand ich es interessant, überhaupt mal zu erfahren, dass es doch so viele Ausweichmöglichkeiten gibt. Und ich selbst bin mit meiner Website ja auch bei einem eher kleinen, dafür aber umso leistungsfähigeren Anbieter mit hervorragendem Support, nämlich dem Webhoster UD Media. Er bietet Ökostrom-Hosting aus Deutschland in Deutschland.

Universelles Box-Sizing mit Vererbung

Die CSS-Angabe box-sizing ist ein Thema für sich und soll in diesem Artikel nicht im Detail erklärt werden. Kurz gesagt, erleichtert sie den Umgang mit dem CSS-Box-Modell, weil man angeben kann, dass Ränder und Innenabstände nicht zur Gesamtbreite einer Box hinzugerechnet werden sollen. Dem Webdesigner wird so eine Menge Rechnerei und Fummelei erspart, etwa wenn mehrere Boxen nebeneinander in einen umgebenden Container passen sollen. Genau erklärt wird das alles in dem Artikel Box Sizing auf CSS-Tricks.

Wer mit CSS-Resets arbeitet, wird das Box-Sizing universell angeben wollen. Wie man das am geschicktesten bewerkstelligt, wird ebenfalls in dem oben genannten Artikel angegeben. Hier der Code:

html {
box-sizing: border-box;
}
*, *:before, *:after {
box-sizing: inherit;
}

Ich persönlich setze nicht so gerne universelle Angaben ein (die mit den Sternchen) – ich habe einmal gelesen, dass man das deswegen vermeiden sollte, weil es die Abarbeitung der CSS-Datei etwas verlangsamt. Nachgemessen habe ich das allerdings nicht.

Lokale Web-Entwicklungsumgebung: Z-WAMP statt Wamp-Server

Um PHP-Dateien und Datenbankzugriffe auf dem lokalen PC testen zu können, installiert man sich ja bekanntlich eine Entwicklungsumgebung. Man kann alles einzeln installieren, also zum Beispiel den Apache-HTTP-Server, einen MySQL- oder Maria-Datenbankserver und natürlich die Programmiersprache PHP. Der Konfigurationsaufwand ist allerdings beträchtlich, und so greift man doch lieber zu einem fertigen Paket. Solche Pakete nennen sich WAMP (Windows-Apache-MySQL/MariaDB-PHP), LAMP (Linux-etc.) und MAMP (Mac-etc.).

Bisher hatte ich immer Wamp-Server benutzt, das auf zwei PCs gut lief. Doch nachdem ich den zweiten Rechner von Windows® 7 auf 10 umgestellt hatte, wollte der Apache-Teil dieses Wamp-Servers nicht mehr laufen, der Apache-Dienst ließ sich einfach nicht starten. Aber es gibt ja noch etliche andere WAMP-Stacks. Der Uniform Server gefiel mir ganz gut, ebenfalls der EasyPHP Devserver, aber letzten Endes landete ich bei Z-WAMP und blieb begeistert an ihm hängen.

Z-WAMP benötigt keine Installation. Man entpackt eine Zip-Datei und das war’s. Die Konfiguration beschränkte sich in meinem Fall darauf, in der Apache-Konfigurationsdatei anzugeben, welches Verzeichnis als localhost anzusehen ist, und dann noch die Datenbanken aus dem alten Wamp-Server-Ordner in den Z-WAMP-Unterordner vdrive\.sys\mysql\data zu kopieren. Ach ja, die bisherigen Datenbankbenutzer mussten noch neu eingerichtet werden. Übrigens, man sollte alle eventuell noch vorhanden vorherigen WAMP-Installationen deinstallieren, um Konflikte zu vermeiden. Die Datenbanken waren bei der Deinstallation von Wamp-Server sogar erhalten geblieben, aber natürlich sollte man (nicht nur vor solchen Aktionen) immer zuverlässige Backups angefertigt haben (externe Festplatte, FTP-Server, …).

Z-WAMP startet sehr schnell und lief bisher auf beiden Rechnern zuverlässig.

URLs mit oder ohne Querstrich am Ende

Bei einem Blick auf die Adressleiste des Browsers fällt auf, dass viele Blog- und Content-Management-Systeme die Webseiten an den Webbrowser ohne Dateiendung ausliefern, also ohne .html oder .php.

Nun kann es Fälle geben, wo Teile des Webauftritts, etwa ein Blog oder Newsbereich, über ein CMS laufen, daneben aber auch statische, von Hand erstellte Seiten existieren. Wir wollen nicht über den Sinn oder Unsinn solcher gemischten Umgebungen diskutieren – Gründe kann es verschiedene geben.

In einem anderen Artikel hatte ich schon darüber geschrieben, wie man die Anzeige der Dateiendungen unterdrückt. Das hat bei mir übrigens bei einem Webhoster funktioniert, bei einem anderen nicht.

Heute soll es darum gehen, wie man einen Schrägstrich am Ende des URL erzeugt oder entfernt (um die statischen Seiten in der Adresszeile des Browsers genauso aussehen zu lassen wie die durchs CMS erzeugten Seiten). Und das bewerkstelligt man dadurch, dass man folgenden Code in die Datei .htaccess (im Falle eines Apache-HTTP-Servers) einträgt:

Ohne Trailing-Slash:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]

Mit Trailing-Slash:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*[^/])$ /$1/ [L,R=301]

Quelle des Codes: Stack Overflow

Schriftgröße der Konsole in Windows 10

Die Konsole unter Microsoft® Windows® 10 erreicht man zum Beispiel durch die Tastenkombination [Windows] + [R] und anschließendes Eintippen des Befehls cmd in das Eingabefeld.

Windows-10-Eingabeaufforderung (1)

Eine andere Möglichkeit ist [Windows] + [X] und Anklicken des Eintrags Eingabeaufforderung.

Windows-10-Eingabeaufforderung (2)

Doch egal, wie man zur Eingabekonsole gelangt – sie hat standardmäßig eine sehr kleine Schriftgröße. Mich strengt das Lesen so kleiner Schriften ziemlich an, doch ich fand bis vor kurzem keine Möglichkeit, die Schriftgröße anders einzustellen, denn dieses Konsolenfenster hat keine Menüleiste, wo man vielleicht einen Eintrag Einstellungen hätte finden können. Ich konnte mir aber nicht vorstellen, dass es wirklich keine Einstellungsmöglichkeit geben sollte.

Bei gutefrage.net (nach meinem Dafürhalten eigentlich nicht gerade ein Kompetenzzentrum) fand ich die Lösung: Man muss auf das Symbol links oben klicken, woraufhin ein Menü aufgeklappt wird. Dort klickt man auf Einstellungen, und in dem neu erscheinenden Fenster wiederum kann man unter anderem die Schrift ändern.

Windows-10-Eingabeaufforderung (3)

Dateiendung .php aus dem URL entfernen

Viele Content-Management-Systeme bieten an, die Dateiendung .php aus dem URL, also aus der Webadresse, zu entfernen. Mit einem Mausklick ist das in aller Regel erledigt. Dies kann aus verschiedenen Gründen gewünscht sein. Was aber, wenn man ein Webseite von Hand erstellt hat und ohne CMS arbeitet?

Des Rätsels Lösung ist ein Eintrag in der Datei .htaccess, die auf Apache-HTTP-Servern üblich ist und verschiedenste Anweisungen enthalten kann. Die wenigen Zeilen Code, die man eintragen muss, lauten folgendermaßen:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^([^/]+)/$ $1.php

Quelle:
Diesen Tipp von Dejan Jacimovic habe ich gefunden auf StuntCoders.

concrete5: Editor (Redactor) ohne Menüleiste

Nachdem ich ein Theme (Thema) für concrete5 gebaut hatte, stellte sich heraus, dass der WYSIWYG-Editor Redactor nicht richtig funktionierte. Zum Beispiel fehlte die Menüleiste und der Dateimanager wurde nicht angezeigt, wenn man eine Datei hochladen wollte. Ich musste ziemlich lange nach einer Lösung suchen.

Da ich kein gelernter Programmierer bin, verstehe ich die Details nicht; aber es ist jedenfalls so, dass concrete5 in der Version 7 mit sogenannten Assets arbeitet. Damit sind CSS- und JavaScript-Dateien gemeint, die typischer Weise gleichzeitig erforderlich sind, um bestimmte Funktionalitäten hinzufügen zu können. Damit zum Beispiel der Redactor-Editor funktionieren kann, müssen bestimmte CSS- und JavaScript-Dateien inkludiert werden. Diese Assets müssen im Theme registriert werden. Zu diesem Zweck wird folgender Code in die Datei application/themes/[theme]/page_theme.php eingetragen:

class PageTheme extends Theme {
	public function registerAssets() {
		$this->requireAsset('redactor');
	}
}

Da auch noch JQuery und der Dateimanager benötigt werden, lautet der gesamte Code:

class PageTheme extends Theme {
	public function registerAssets() {
       	$this->requireAsset('javascript', 'jquery');
		$this->requireAsset('redactor');
		$this->requireAsset('core/file-manager');
	}
}

Nachdem ich das so eingetragen hatte, funktionierten sowohl der Redactor als auch der Dateimanager.

Quellen:
concrete5-Forum
Stack Overflow
concrete5-Dokumentation