script

PiHole – Sicher und werbefrei surfen mit dem Raspberry Pi

Als Mediacenter oder IoT-Lösung – der Bastelrechner Raspberry Pi ist vielseitig einsetzbar. Mit Pihole macht er sogar euer gesamtes Netzwerk werbefrei und frei von Trackern. So richtet ihr die Software Schritt für Schritt einKling.

Was ist der Unterschied von Pihole zu einem Adblocker?

Warum einen Raspberry Pi mit etwas ausstatten, das ein Adblocker im Browser auf den ersten Blick auch kann? Weil Adblocker-Plugins etwas anders funktionieren und aufgerufene Websites erst blocken, sobald sie euren PC, Mac oder das Smartphone erreicht haben. Pihole hat einen anderen Ansatz, denn es blockt Tracker, Viren-verseuchte Websites und Werbung auf DNS-Ebene.

Das heißt, dass das Pihole quasi alles ausfiltert, bevor es an die Geräte im Netzwerk ausgeliefert wird. Wie ein Sieb, das zwischen eurem Router und allen Geräten im Netzwerk arbeitet. Und es bringt den Vorteil mit, dass diese Geräte auch in den nativen Apps werbefrei sind – und nicht nur mit Plugins oder speziellen Apps. Ich blicke in deine Richtung, iPhone.

Weniger Tracking, mehr Speed

Weniger Tracker bedeuten auch gleichzeitig mehr Privatsphäre, denn die eingebauten Filter sorgen dafür, dass deutlich weniger Informationen über euer Surfverhalten gesammelt werden können. Pihole ist zwar kein Tails oder Tor, das euren Traffic über fünf Millionen Proxies und dann noch mal zur Venus schickt, blockt aber sehr viele Anbieter und gefährliche Seiten.

Weniger Werbung und weniger Gefunke von Trackern und Analytics-Anbietern bedeutet zudem weniger Traffic und schnellere Ladezeiten von Websites und Apps. Na, überzeugt? Das alles braucht ihr für die Einrichtung.

Diese Hardware brauchst du für den Raspberry Pi mit Pihole

  • Einen Raspberry Pi – im Grunde tut es jeder Raspberry, auch der Raspberry Pi 1 oder Zero. Wir empfehlen euch jedoch einen Raspberry Pi 3 und aufwärts, um die Weboberfläche vom Pihole flott nutzen zu können.
  • Ein Netzteil – oder einen USB-Anschluss mit 2A-Output oder mehr.
  • Eine Micro-SD-Karte und einen SD-Adapter, der Karten meistens beiliegt.
  • Optional: Ein Gehäuse für den Raspberry Pi.
  • Optional: Einen Hoodie, da ihr ein paar einfache Shell-Befehle kopieren werdet und dabei aussehen müsst, wie ein Hacker.

Software für Pihole

 

 

Vorbereitung der SD-Karte

  1. Ladet euch im ersten Schritt Balenaetcher (oder eine der oben erwähnten Alternativen) herunter und installiert das Tool. Balenaetcher braucht ihr, um das Betriebssystem für den Raspberry Pi auf der SD-Karte zu „installieren“. Das Image öffnen und die Dateien kopieren funktioniert übrigens nicht, da eine Partitionstabelle auf die Micro-SD-Karte geschrieben werden muss.
  2. Raspberry Pi OS findet ihr hier, wobei ihr für das Pihole nur die „Lite“-Version braucht. Bei der Veröffentlichung dieses Artikels ist das Raspberry Pi OS (32-bit) Lite (basierend auf Debian Buster). Ihr könnt aber auch die 64-Bit-Variante installieren oder die Version mit einer Desktopumgebung, falls ihr den Raspberry Pi mit Pihole noch für andere Dinge verwenden wollt.
  3. Startet Balenaetcher, wählt die heruntergeladene und entpackte Datei und dann die Micro-SD-Karte aus, die nun mit oder ohne Adapter in eurem PC stecken sollte. Checkt bitte vorher, dass ihr die richtige Micro-SD-Karte und nicht eine externe Festplatte oder den USB-Stick auswählt (den mit dem geheimen Ordner, den Mutti niemals sehen sollte).
  4. Balenaetcher schreibt das Raspberry Pi OS auf die SD-Karte, und somit wäre das gute Stück dann auch schon bereit für den Einsatz. Steckt die Karte in euren Raspberry und stöpselt ihn mit einem HDMI- und am besten einem Netzwerkkabel verbunden an die Strombuchse. Ihr braucht zudem eine Tastatur mit Bluetooth-Adapter oder ganz oldschool eine mit Kabel.

 

 

Voreinstellungen des Raspberry Pi OS

Nachdem der Raspberry Pi gebootet hat (was ein wenig nach „Matrix“ aussieht), loggt ihr euch mit folgenden Logindaten und Passwort ein:

pi
raspberry

(beziehungsweise „raspberrz“, da die Tastatur noch auf Englisch eingestellt ist)

Ich bin zwar kein Hellseher, nehme aber an, dass ihr mit hoher Wahrscheinlichkeit eine deutsche Tastatur nutzt. Damit das auch der Raspberry weiß, gebt ihr im Terminal ein:

sudo raspi-config

In dem Konfigurationstool hüpft ihr zu Punkt 4 (Localisation Options) und stellt im nächsten Schritt die Locale unter I1 auf Deutsch (DE), die Timezone (I2) auf Berlin, das Keyboard Layout (I3) auf Deutsch (DE) und WLAN Country (I4) ebenfalls auf DE. Die Punkte wählt ihr mit der Space-Taste an oder ab und wechselt mit Tab auf „Select“ beziehungsweise „Back“. Nach etwas Gerödel verlasst ihr das Menü über „Finish“ und startet den Raspberry am besten neu, mit:

sudo reboot

Nach dem Neustart ändert ihr zunächst das Passwort, damit Mr. Robot nicht so einfach Zugriff auf euren Raspberry Pi hat. Loggt euch ein (diesmal mit hoffentlich deutschem Tastaturlayout) und gebt ein:

passwd

Gebt euer aktuelles Passwort ein (raspberry) und dann euer neues, das ihr am besten in einem Passwortmanager speichert. Um das Betriebssystem auf den neuesten Stand zu bringen, führen wir ein Update durch, mit:

sudo apt update && sudo apt -y upgrade && sudo apt-get -y dist-upgrade && sudo apt -y autoremove && sudo apt -y autoclean && sync && sudo reboot

Nach dem Neustart installiert ihr nun Pihole und macht euch erstmal zum root, da Pihole bestimmte Rechte für die Installation braucht:

sudo passwd root

Vergebt jetzt ein temporäres Passwort und loggt euch als root ein, mit:

su -


Deutsche Tastatur:

  1. sudo raspi-config
  2. Punkt 4 Localisation Options
  3. l3 Change Keyboard Layout
  4. PC generic de 105 tecles (intl.)
  5. Runtergehen auf „Andere“
  6. Das Wort Duits suchen und bestätigen
  7. Dann nach oben und DUITS auswählen
  8. und dann geht es komischerweise wie gewohnt weiter
 

 

 

Die Installation von Pihole auf dem Raspberry Pi

Pihole bietet eine übersichtliche Oberfläche, mit der ihr weitere Einstellungen vornehmen könnt. 

Falls ihr nicht wisst, welche IP euer Pihole hat, findet ihr es so raus und notiert es am besten:

hostname -I

(das ist ein großes I, wie „Ihhh“, kein L)

Jetzt installiert ihr das Pihole über das Skript:

curl -sSL https://install.pi-hole.net | bash

Sollte das nicht funktionieren, weil curl fehlt, könnt ihr auch Folgendes tun:

wget -O basic-install.sh https://install.pi-hole.net
sudo bash basic-install.sh

 

Bei Problemen findet ihr weitere Infos zur Installation auf der GitHub-Seite von Pihole. Das Skript installiert und arbeitet ein bisschen vor sich hin und wird euch zwischendurch einige Fragen stellen, die ihr wie folgt, beantworten könnt:

 

Select Upstream DNS Provider: Cloudflare oder Google oder einer eurer Wahl.

Select Lists: Wählt hier einfach alle Listen aus.

Select Protocols: IPv4 und/oder IPv6, falls ihr IPv6 nutzt.

Do you want to use your current network settings as a static address: Gebt hier die IP-Adresse des Raspberry Pi ein, die euer Router zugewiesen hat (beziehungsweise Enter), und wählt den Router als Gateway aus – meist 192.168.0.1, aber prüft es zur Sicherheit nochmal in den Einstellungen eures Routers.

Do you wish to install the web admin interface: Ja, denn hier nehmt ihr nachher Einstellungen vor und seht, was das Pihole alles filtert.

Do you wish to install the web server (lighttpd): Ja, denn ohne läuft auch die Weboberfläche nicht oder ihr müsst euch den Server anders zusammenfrickeln.

Do you want to log queries: Ja, sofern ihr die Zugriffe in Logdateien speichern wollt.

Select a privacy mode for FTL: Je nachdem, ob ihr ein öffentliches Netzwerk betreibt oder die Anfragen schlicht und einfach komplett anonymisieren wollt (hallo DSGVO), könnt ihr hier einstellen, was genau geloggt wird.

 

 

Nach der Installation zeigt euch das Skript die Adresse des Pihole als IPv4 und/oder IPv6 sowie das Passwort für die Weboberfläche an. Loggt euch wieder als root aus und auch ein Neustart kann nicht schaden:

exit
sudo passwd -dl root
sudo reboot

 

 

Pihole als DNS-Server des Routers eintragen

Im Grunde könnt ihr den Raspberry nun an seinen Zielort verfrachten. Er braucht nur noch Strom und ein Netzwerkkabel zu eurem Router. Das Pihole funktioniert im Grunde auch per WLAN, sofern es nicht der ganz alte Raspberry Pi 1 ist. Für eine stabile Verbindung, und um etwas Frickelei zu vermeiden, solltet ihr aber ein Netzwerkkabel nutzen. Wer den Raspberry Pi übrigens nicht kennt: Das Teil hat leider keinen An- oder Aus-Schalter. Ihr macht ihn an, wenn ihr das USB-Kabel anstöpselt und fahrt ihn am besten herunter mit:

sudo shutdown now

Dann könnt ihr ihn vom Strom trennen und wieder anklemmen, wenn ihr ihn einschalten wollt. Im Idealfall wird er aber die ganze Zeit durchlaufen und Trackinganfragen, Werbung und anderen Firlefanz auf DNS-Ebene blocken. Damit das funktioniert, müsst ihr das in einem letzten Schritt eurem Router mitteilen.

Pihole müsst ihr im Backend der Fritzbox als DNS-Server eintragen. Hier unterscheiden sich die Modelle bei ihrer Weboberfläche natürlich. Bei der Fritzbox findet ihr die Einstellung unter Internet > Zugangsdaten > DNS-Server.

Hier gebt ihr die IPv4- und/oder die IPv6-Adresse eures Pihole ein. Als Alternative empfiehlt sich noch ein zweiter DNS-Server, falls ihr den Raspberry mal wechseln, aber dennoch weiter Internet haben wollt. Hier bieten sich Cloudflare (1.1.1.1) oder Googles DNS-Server (8.8.8.8) an, aber ihr könnt natürlich nehmen, was ihr wollt.

 

 

Die Weboberfläche und weitere Einstellungen

Im Grunde sollte alles out-of-the-box funktionieren. Ihr könnt euch die Weboberfläche vom Pihole ansehen, indem ihr die IP-Adresse im Browser angebt und ein „/admin/“ anhängt, zum Beispiel:

http://192.168.0.10/admin/

Loggt euch mit dem Passwort aus der Installation ein und ihr könnt euch auf dem Dashboard ansehen, wie viele Anfragen vom Pihole geblockt worden sind, welche Domains und Tracker das waren und so weiter. Wenn ihr die Listen aktuell halten wollt, könnt ihr unter dem Punkt Tools > Update Gravity auf Update klicken.

Eine Allow-Liste findet ihr ebenfalls im Menü links und ihr werdet sie das eine oder andere Mal brauchen, denn manchmal blockt Pihole relativ harmlose Werbetracker oder versaut euch Links in Newslettern, da diese meist über Tracking-Tools laufen. Setzt die entsprechenden Domains dann einfach auf die Liste oder schaltet Pihole kurzzeitig mit einem Klick auf Disable aus und wählt, für wie lange er ausbleiben soll.

Wer möchte, kann das Pihole auch als DHCP-Server nutzen, DNSSEC aktivieren, als rekursiven DNS-Server mit Unbound nutzen, weitere Adblock-Listen hinzufügen oder die Allow-Lists automatisch updaten lassen. Auf die gehört übrigens auch www.t3n.de – ist ja klar. Wie ihr das alles anstellt, erfahrt ihr hier:

Als kleiner Tipp: Wenn das Blocken mal nicht direkt funktioniert, wartet ein paar Minuten, bis euer Netzwerk das Pihole als DNS-Server „vermittelt“ hat. Oder startet euer Gerät ein Mal neu. Das gleiche gilt auch, wenn ihr das Pihole im Menü kurzzeitig ausschaltet, denn ein paar Sekunden lang wird es Tracker immer noch blocken.

 


Neue Ad-Block Filterlisten in Pi-hole einbinden

 

Standardmäßig enthält Pihole 5.0 aktuell 7 Filterlisten zum Blocken von Domains bzw. Webseiten. Diese ermöglichen Pihole das Filtern von unerwünschten Inhalten wie z.B. Werbebannern oder unerwünschten Scripten. Durch das Hinzufügen weiterer Filterlisten lässt sich die Zahl der unerwünschten Domains sehr einfach erhöhen. Wir wollen euch heute zeigen, wie ihr euren Pi-hole noch besser im Ad-Blocking machen könnt.

Filterlisten gibt es wie Sand am Meer. Wichtig ist, dass diese Listen gepflegt werden, denn die Listen werden nicht nur einmal in Pihole eingebunden, sondern regelmäßig auf Änderungen geprüft. Wir haben für euch ein paar Listen bzw. Webseiten zusammengetragen:

for blocklists i’m using

https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts https://mirror1.malwaredomains.com/files/justdomains http://sysctl.org/cameleon/hosts https://zeustracker.abuse.ch/blocklist.php?download=domainblocklist https://s3.amazonaws.com/lists.disconnect.me/simple_tracking.txt https://s3.amazonaws.com/lists.disconnect.me/simple_ad.txt https://hosts-file.net/ad_servers.txt https://raw.githubusercontent.com/HenningVanRaumle/pihole-ytadblock/master/ytadblock.txt https://github.com/anudeepND/youtubeadsblacklist/blob/master/domainlist.txt https://v.firebog.net/hosts/lists.php?type=tick

for blacklists i’m using

ad.doubleclick.net clients6.google.com googleads.g.doubleclick.net i1.ytimg.com pagead2.googlesyndication.com pubads.g.doubleclick.net r1—sn-vgqsen7z.googlevideo.com r1.sn-vgqsen7z.googlevideo.com r17—sn-vgqsenes.googlevideo.com r2—sn-vgqs7n7k.googlevideo.com r20—sn-vgqs7ne7.googlevideo.com r20.sn-vgqs7ne7.googlevideo.com r4—sn-vgqs7nez.googlevideo.com r4.sn-vgqs7nez.googlevideo.com securepubads.g.doubleclick.net static.doubleclick.net www.youtube-nocookie.com

I’ve had decent success with this regex

^r[0-9]*([-]{1,3}|.)sn-[a-z0-9]{4,}-[a-z0-9]{4,}\.googlevideo

It’s not perfect, but does block about 80% of the ads that play during streaming, but only about 40% of the ads that play before the video begins.

 

 

Einbinden neuer Filterlisten in Pi-Hole

Ab der Version 5 von Pi-Hole befindet sich die Verwaltung der Filterlisten im Gruppen-Management der Software. Ihr könnt mehrere Gruppen definieren, die dann auf unterschiedliche Blocklisten zugreifen können.

 
Nach dem Einbinden neuer Blocklisten müssen diese noch über die im Bereich Tools vorhandene Funktion Update Gravity in Pi-Hole aktiviert werden.
 
 

pihole5-list-tool

Installing Python packages

sudo apt update
sudo apt install python3-picamera

sudo apt install python3-pip

installation

If you don’t sudo pip3 install, things won’t work – possibly in a very confusing way. Definitely on Raspbian 10, so probably before that.

$ sudo pip3 install pihole5-list-tool --upgrade

usage / running

Simply run:

$ sudo pihole5-list-tool

Finishing up

After adding lists, they must be loaded by running:

$ pihole -g

 

 

 

allowlists

Currently the only source for maintained whitelists is anudeepND’s allowlist. They are presented as:

  • Allowlist Only – Domains that are safe to allow i.e does not contain any tracking or

      advertising sites. This fixes many problems like YouTube watch history,
      videos on news sites and so on.
    
  • Allowlist+Optional – These are needed depending on the service you use. They may contain some

      tracking sites but sometimes it's necessary to add bad domains to make a
      few services to work.
    
  • Allowlist+Referral – People who use services like Slickdeals and Fatwallet need a few sites

      (most of them are either trackers or ads) to be whitelisted to work
      properly. This contains some analytics and ad serving sites like
      doubleclick.net and others. If you don't know what these services are,
      stay away from this list. Domains that are safe to whitelist i.e does
      not contain any tracking or advertising sites. This fixes many problems
      like YouTube watch history, videos on news sites and so on.
    

ad/blocklists

Currently the only source for maintained blocklists is firebog.net

  • Non-crossed lists: For when someone is usually around to whitelist falsely blocked sites
  • Ticked lists: For when installing Pi-hole where no one will be whitelisting falsely blocked sites
  • All lists: For those who will always be around to whitelist falsely blocked sites

 

Zusätzliche Whitelists

Gibt es, um mal welche zu nennen:

Aber die Ersteller/Verwalter von Blocklists sollten Einträge aus solchen Whitelists eigentlich bereits aus ihren Listen entfernt haben.

 


IP-Adresse oder sonstige Netzwerkeinstellungen ändern

Reconfigure pi hole via command line: pihole -r

You can also change ip address in

/etc/pihole/setupVars.conf

 

 


 

Updating

Updating is as simple as running the following command:

pihole -up

 


 

How do I set or reset the Web interface Password?

The Web interface password needs to be reset via the command line on your Pi-hole. This can be done locally or over SSH. You will use the pihole command to do this:

pihole -a -p

You will be prompted for the new password. If you enter an empty password, the password requirement will be removed from the web interface.

OneDrive deinstallieren

Um OneDrive auf Dauer loszuwerden geht man folgendermaßen vor:

  • Create a text file by opening Notepad
  • Go on the following link and copy/paste the code into the text file: http://pastebin.com/zw70xK8e
  • Then save as RemoveOneDrive.bat and exit
  • Run the script with admin rights and One Drive will be gone

 

@echo off
cls

set x86="%SYSTEMROOT%\System32\OneDriveSetup.exe"
set x64="%SYSTEMROOT%\SysWOW64\OneDriveSetup.exe"

echo Closing OneDrive process.
echo.
taskkill /f /im OneDrive.exe > NUL 2>&1
ping 127.0.0.1 -n 5 > NUL 2>&1

echo Uninstalling OneDrive.
echo.
if exist %x64% (
%x64% /uninstall
) else (
%x86% /uninstall
)
ping 127.0.0.1 -n 5 > NUL 2>&1

echo Removing OneDrive leftovers.
echo.
rd "%USERPROFILE%\OneDrive" /Q /S > NUL 2>&1
rd "C:\OneDriveTemp" /Q /S > NUL 2>&1
rd "%LOCALAPPDATA%\Microsoft\OneDrive" /Q /S > NUL 2>&1
rd "%PROGRAMDATA%\Microsoft OneDrive" /Q /S > NUL 2>&1

echo Removeing OneDrive from the Explorer Side Panel.
echo.
REG DELETE "HKEY_CLASSES_ROOT\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}" /f > NUL 2>&1
REG DELETE "HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}" /f > NUL 2>&1

pause

Ebay: Auktionen optimieren

Als Verkäufer bei Ebay sollten Sie Ihre Artikel und damit Ihren Shop mit einem schicken Design versehen. Damit erhöhen Sie Ihr Vertrauen beim Kunden und steigern gleichzeitig Ihren Umsatz.

Ebay mit HTML ein eigenes Shop-Design erstellen

Der Texteditor von Ebay ist leider sehr eingeschränkt – bis auf den Font, die Schriftart und Standard-Formatierungen können Sie hier leider nichts einstellen. Abhilfe schafft optionaler HTML-Code, den Sie statt des normalen Textes in den HTML-Editor einfügen können. HTML ist die Programmiersprache von Internetseiten – wenn Sie sich damit nicht auskennen, können Sie einen speziellen Editor verwenden (siehe unten). Bei der eigenen Design-Programmierung gibt es folgendes zu beachten:

  • Leider gibt es für Verkäufer unterschiedliche Regeln für den HTML-Editor: Geprüfte Mitglieder, Powerseller und Verkäufer mit über 500 Verkäufen dürfen in Ihrem Code Scripte und Iframes verwenden – so können Sie etwa Ihre Webseite im Ebay-Shop einbinden.
  • Kleine Verkäufer dürfen keine externen CSS- oder Javascript-Dateien einbinden – CSS-Elemente müssen Sie daher sehr eingeschränkt über den „style“-Befehl von div-Boxen setzen.
  • Bilder können Sie wie gewohnt über den Code <img src=“URL“> einbinden. Bei der Positionierung von Bildern müssen Sie auf das Ebay-Design Rücksicht nehmen: Sonst können Ihre Bilder etwa in den Footer der Webseite reichen.

Ein gutes Tool für den Mac hierfür ist der Auction Listing Designer. Für Windows kann man den ListingFactory verwenden. Möchte man sein Layout online erstellen kann man gegen eine monatliche Gebühr auf den Crazylister zurückgreifen.

 

Einbindung externer Webseiten in Ebay mittels iFrame

Möchte man spezielle Webseiten, die (extra) für Ebay entworfen wurden über einen iFrame einbinden, so benötigt man folgenden Code:

<style>
</style>
&nbsp;
<iframe src="https://www.domain.com/ebay/product1.html" height="1500" width="1000"></iframe>

Höhe und Breite können dementsprechend angepasst werden.

 

 

Kompakte Google-Suchtipps im Dutzend

Google weiss fast alles. Sie brauchen die Informationen bloss korrekt aus der Suchmaschine herauszukitzeln. Das gelingt mit diesen Tipps.

Bei einer Google-Suche wird man oft durch Tausende irrelevanter Resultate erschlagen. Damit Sie beim Suchen in Google auf einen grünen Zweig kommen, brauchen Sie die folgenden Tipps.

Wichtig: Bei den Suchoperatoren mit Doppelpunkt (z.B. site: oder filetype:) folgt nach dem Doppelpunkt kein Leerzeichen.
Nicht mehr nötig ist bei Google der Operator «AND» oder «UND», denn Google findet automatisch Seiten, die alle eingegebenen Begriffe enthalten. Das früher benutzte Pluszeichen für Begriffe, die unbedingt vorkommen müssen, ist sogar kontraproduktiv. Jenes sucht nämlich primär auf den Google-Plus-Seiten oder findet Blutgruppen.

Suche auf bestimmter Webseite: Sie wissen noch, dass eine bestimmte Webseite einmal über ein bestimmtes Thema berichtet hat. Schränken Sie die Suche doch einfach mittels «site:»-Operator auf jene Webseite ein. Das «www» können Sie dabei oft weglassen, und das «http://» ist hierbei sowieso überflüssig.
Beispiel: Um bei PCtipp.ch alles über den Windows Script Host zu finden, geht das so: windows script host site:pctipp.ch

Exakter Begriff: Tippfehler und unterschiedliche Schreibweisen bügelt Google meistens automatisch aus und bezieht beide Schreibweisen mit ein. Ebenso findet Google auch gross geschriebene Wörter, auch wenn Sie sie klein schreiben. Kümmern Sie sich auch nicht darum, ob ein Wort wie «weiss» auf deutschen Webseiten mit einem Eszett (ß) geschrieben wird («weiß»).

Bei der Suche nach einem Begriff mit mehreren Wörtern zeigt es alle Seiten, auf denen alle Wörter vorkommen, wenn oft auch in unterschiedlicher Reihenfolge. Aber was ist, wenn Sie eine ganz bestimmte Zeichen- oder Wortfolge suchen? Setzen Sie diese einfach in „solche“ Anführungszeichen.
Beispiel: „I see a red door“

Ausserdem sind zahlreiche «Wörter» mit nur einem oder zwei Buchstaben für Google reine Füllwörter und werden ignoriert, etwa das «I» in «Star Trek I» oder «LA» für «Los Angeles». Wenn Sie Wert drauf legen, dass diese vorkommen, setzen Sie diese ebenfalls in Anführungszeichen: „I“ und „LA“.

Platzhalter: Das Sternchen ist nicht nur unter Windows ein Platzhalter für beliebige Zeichen im Dateinamen, sondern dient auch in Google als Jokerzeichen. Wenn Sie etwa bei der Suche nach Mani Matters Liedklassiker nicht wissen, wie er wohl den Wilhelm Tell buchstabiert hat, dann suchen Sie einfach danach: si hei dr * ufgfüert

Das findet alles, sei es Wilhelm Tell oder in Mani Matters Dialekt eben: Wilhälm Täll – und dies klappt auch, wenn der Suchbegriff in Anführungszeichen steht.

Ungewünschtes ausschliessen: Sie suchen nach Infos zu einem Thema oder einem Gerät, wollen aber keine Resultate eines bestimmten Anbieters oder welche in einem bestimmten Kontext. Setzen Sie das Element, das Sie explizit nicht wollen, ebenfalls ins Suchfeld, pflanzen aber ein Minuszeichen davor.

Beispiele: Die Suche nach greyhound -bus findet alles zur Hunderasse, aber nicht zur Buslinie. Und die folgende Suche findet Infos über die Nikon D800, aber ohne die oftmals störenden Treffer auf zwei Auktionsplattformen:
nikon d800 -site:ebay.com -site:ricardo.ch

«Oder» heisst «OR»: Bei Synonymen findet Google die jeweils andere Schreibweise meist von selbst. Aber wenn Sie sich für zwei verschiedene Begriffe interessieren, die nicht zwingend Synonyme sind, können Sie auch mit dem Operator «OR» suchen.
Beispiel: ausstellung zürich picasso OR monet

Dateityp: Vielleicht sind Sie auf eine PDF- oder Word-Datei aus, von der Sie wissen, dass sie auf einer bestimmten Webseite liegen muss. Sie haben beispielsweise gehört, dass konsumentenschutz.ch ein PDF zum Thema «Abofalle» anbietet. Mit dem Operator «filetype:» finden Sie sofort bestimmte Dateitypen, so auch PDFs, siehe Screenshot.
Beispiel: abofalle filetype:pdf site:konsumentenschutz.ch

 

Wer hats verlinkt? Wenn Sie wissen möchten, wer einen Link auf eine bestimmte Webseite gesetzt hat, gibts für die Google-Suche den Operator «link:». Diesen sollten Sie nicht mit anderen Operatoren kombinieren, mit Ausnahme des ausschliessenden Minuszeichens und dem Operator «site:». Denn mit diesen beiden können Sie Suchtreffer jener Domain ausklammern, auf welcher der Link sowieso schon liegt. Die internen Verlinkungen würden das Suchergebnis nur unnötig überfüllen.
Beispiel: Wer hat den beliebtesten PCtipp-Online-Artikel verlinkt (link:www.pctipp.ch/tipps-tricks/kummerkasten/office/artikel/dropdown-liste-in-excel-erstellen-21629/), mal abgesehen von PCtipp selbst (-site:pctipp.ch)? Voilà, so finden wir es heraus:
link:www.pctipp.ch/tipps-tricks/kummerkasten/office/artikel/dropdown-liste-in-excel-erstellen-21629/ -site:pctipp.ch

Cache-Anzeige: Der Suchindex zeigt manchmal Resultate an, die gerade in diesem Moment gar nicht online verfügbar sind. Das kann passieren, wenn der Server der jeweiligen Webseite gerade eine kurze Unterbrechung erleidet oder wenn die Inhalte wegen Wartungsarbeiten vorübergehend offline sind. Sie müssen nicht zwingend warten, bis der Server wieder da ist. Ist die Seite mit dem meistversprechenden Resultat gerade nicht online? Klappen Sie hinter dem Resultat das kleine grüne Dreieck auf und wählen Sie Im Cache. Das zeigt die im Google-Cache gespeicherte Version der Webseite an.

Masse umrechnen: Wollen Sie wissen, wie viel ein Betrag von 250 EUR in Schweizer Franken macht? Google liefert mit 250 eur in chf sofort die Antwort. Dasselbe funktioniert auch mit Längenmassen, etwa feet (Fuss) und Meter: 250 feet in meters

Suchoptionen nutzen, Datum eingrenzen: Benutzen Sie auch die Suchoptionen. Denn mit deren Hilfe können Sie die Suchresultate geografisch eingrenzen (z.B. auf Seiten aus der Schweiz) oder nach Datum (z.B. nur von letzter Woche).

Bildersuche: Wenn Sie ein bestimmtes Bild suchen, starten Sie eine normale Google-Suche und wechseln danach zu Bilder. Hier haben Sie übrigens zahlreiche spannende Werkzeuge. Auch hier gibts Suchoptionen. Die beinhalten aber auch die Grösse des Bildes, die dominierenden Farben, den Typ (z.B. Gesicht oder Clipart), den Zeitraum und – wichtig für die allfällige Weiterverwendung – die Nutzungsrechte.

Oder haben Sie ein Bild und möchten weitere gleiche oder ähnliche Bilder finden? Klicken Sie in der Bildersuche im Suchfeld aufs Kamerasymbol. Ziehen Sie ein Bild hinein oder fügen Sie den Weblink zum Bild ein, zu dem Sie ähnliche Bilder suchen möchten. Vielleicht haben Sie Glück und finden weitere Exemplare desselben Motivs. Es kann Ihnen auch helfen, Fotos aufzuspüren, die jemand von Ihnen geklaut hat.

 

Kombinieren Sie!

Geschwindigkeit deiner Website optimieren

Wir alle kennen die Tools zum Messen der Geschwindigkeit einer Website: Pagespeed, YSlow, Pingdom, Webpagetest oder das Kombitool aus Pagespeed und YSlow GTMetrix. Aber wie wird zum Beispiel Browser Caching aktiviert? Wer sich damit nicht auskennt, der findet viele, viele Artikel dazu, die viel Code in sich haben und nichts erklären. Hier ist noch einer davon. 😉
Über die vergangenen Jahre habe ich dieses Gist immer wieder ergänzt, verbessert und korrigiert. Entstanden ist eine sehr praktische Sammlung von Einstellungen, die fail safe die jeweiligen Möglichkeiten des Hosters ausnutzen. Die entsprechenden Anweisungen sind in If-Abfragen gekapselt, so dass es bei guten Hostern keine Probleme mit nicht unterstützen Modulen geben sollte.

Die Einstellungen teilen sich in drei Bereiche: Komprimierung (Deflate/GZip), Browser Caching (Ablaufdatum für statische Caching-Inhalte definieren) und dem Setzen von sinnvollen Headern (Keep Alive, Accept Encoding, etc.).

#
# Sources:
# http://stackoverflow.com/questions/7704624/how-can-i-use-gzip-compression-for-css-and-js-files-on-my-websites
# http://codex.wordpress.org/Output_Compression
# http://www.perun.net/2009/06/06/wordpress-websites-beschleuinigen-4-ein-zwischenergebnis/#comment-61086
# http://www.smashingmagazine.com/smashing-book-1/performance-optimization-for-websites-part-2-of-2/
# http://gtmetrix.com/configure-entity-tags-etags.html
# http://de.slideshare.net/walterebert/die-htaccessrichtignutzenwchh2014
# http://de.slideshare.net/walterebert/mehr-performance-fr-wordpress
#
<IfModule mod_deflate.c>
# Insert filters / compress text, html, javascript, css, xml:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/vtt 
AddOutputFilterByType DEFLATE text/x-component
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/js
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE application/atom+xml 
AddOutputFilterByType DEFLATE application/json
AddOutputFilterByType DEFLATE application/ld+json 
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject 
AddOutputFilterByType DEFLATE application/x-font-ttf 
AddOutputFilterByType DEFLATE application/x-web-app-manifest+json 
AddOutputFilterByType DEFLATE font/opentype 
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
# Exception: Images
SetEnvIfNoCase REQUEST_URI \.(?:gif|jpg|jpeg|png|svg)$ no-gzip dont-vary
# Drop problematic browsers
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary
</IfModule>
## EXPIRES CACHING ##
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 week"
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/svg+xml "access plus 1 month" 
ExpiresByType text/css "access plus 1 month"
ExpiresByType text/html "access plus 1 minute"
ExpiresByType text/plain "access plus 1 month"
ExpiresByType text/x-component "access plus 1 month" 
ExpiresByType text/javascript "access plus 1 month"
ExpiresByType text/x-javascript "access plus 1 month"
ExpiresByType application/pdf "access plus 1 month"
ExpiresByType application/javascript "access plus 1 months"
ExpiresByType application/x-javascript "access plus 1 months"
ExpiresByType application/x-shockwave-flash "access plus 1 month"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresByType application/json "access plus 0 seconds"
ExpiresByType application/ld+json "access plus 0 seconds"
ExpiresByType application/xml "access plus 0 seconds"
ExpiresByType text/xml "access plus 0 seconds" 
ExpiresByType application/x-web-app-manifest+json "access plus 0 seconds" 
ExpiresByType text/cache-manifest "access plus 0 seconds" 
ExpiresByType audio/ogg "access plus 1 month" 
ExpiresByType video/mp4 "access plus 1 month" 
ExpiresByType video/ogg "access plus 1 month" 
ExpiresByType video/webm "access plus 1 month" 
ExpiresByType application/atom+xml "access plus 1 hour" 
ExpiresByType application/rss+xml "access plus 1 hour" 
ExpiresByType application/font-woff "access plus 1 month" 
ExpiresByType application/vnd.ms-fontobject "access plus 1 month" 
ExpiresByType application/x-font-ttf "access plus 1 month" 
ExpiresByType font/opentype "access plus 1 month" 
</IfModule>
## EXPIRES CACHING ##
#Alternative caching using Apache's "mod_headers", if it's installed.
#Caching of common files - ENABLED
<IfModule mod_headers.c>
<FilesMatch "\.(ico|pdf|flv|swf|js|css|gif|png|jpg|jpeg|txt|html|htm)$">
Header set Cache-Control "max-age=2592000, public"
</FilesMatch>
</IfModule>
<IfModule mod_headers.c>
 <FilesMatch "\.(js|css|xml|gz)$">
 Header append Vary Accept-Encoding
 </FilesMatch>
</IfModule>

<filesMatch "\\.(js|js.gz)$">
Header set Cache-Control "max-age=604800, private"
</filesMatch>
<IfModule mod_gzip.c>
 mod_gzip_on Yes
 mod_gzip_dechunk Yes
 mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
 mod_gzip_item_include handler ^cgi-script$
 mod_gzip_item_include mime ^text/.*
 mod_gzip_item_include mime ^application/x-javascript.*
 mod_gzip_item_exclude mime ^image/.*
 mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</IfModule>
# Set Keep Alive Header
<IfModule mod_headers.c>
 Header set Connection keep-alive
</IfModule>
# If your server don't support ETags deactivate with "None" (and remove header)
<IfModule mod_expires.c> 
 <IfModule mod_headers.c> 
 Header unset ETag 
 </IfModule> 
 FileETag None 
</IfModule>

6 Landing Page Design Tips

 

EyeTV Recording done Script – den Mac nach der Aufnahme ausschalten

Apple Script Editor öffnen.

on RecordingDone(RecordinID)
tell application "Finder"
beep
end tell
display dialog "EyeTV Aufnahme beendet. Der Rechner wird nun in den Ruhezustand versetzt!" buttons {"Abbrechen"} cancel button 1 giving up after 30 with title "EyeTV"

tell application "Finder"
sleep
end tell
end RecordingDone

Als RecordingDone.scpt speichern

Script nach /Library/Application Support/EyeTV/Scripts/TriggeredScripts kopieren.

EyeTV neustarten

 

 

Update 😉

on RecordingDone(recordingID)
	tell application "EyeTV"
		set limit to 30 * minutes
		set ausmachen to true
		set vorlauf to (prepad time + 2) * minutes
		set jetzt to current date
		repeat with aufnahme in start time of programs
			set diff to aufnahme - jetzt
			if diff ≥ vorlauf then set diff to diff - vorlauf
			if diff ≥ 0 and diff ≤ limit then set ausmachen to false
		end repeat
		if is_recording = false and ausmachen = true then
			activate
			set antwort to display dialog "ausschalten?" buttons {"nein", "ja"} default button "nein" giving up after 30
			if button returned of antwort = "ja" or button returned of antwort = "" then
				tell application "Finder"
					shut down
				end tell
			end if
		end if
	end tell
end RecordingDone

 

Weitere Scripte:

http://support.elgato.com/index.php?_m=knowledgebase&_a=viewarticle&kbarticleid=2727