Linux Bash Snippet: Einträge in Logfiles zählen und summieren

Heute ein kleines Sysadmin-Helferlein aus der Kategorie Hilfreiche Befehle für Linux, Bash und Co . Hier möchte ich in Zukunft nützliche Kommandos, Einzeiler und Snippets für die tägliche Arbeit mit Linux als Sysadmin posten. Grund-Kenntnisse in Linux über z.B. Pipes usw. sollten vorhanden sein. Viel Spaß! Oft ist es notwendig aus einem System- Logfile , Daten wie Befehle, Dateinamen, User-Agents, Zeiten oder was auch immer zu zählen, zu summieren und zu sortieren. Möchte man zum Beispiel wissen, welcher Befehl auf einem Webserver am meissten aufgerufen wurde, reicht ein Einzeiler: cat access_log | awk '{print $6}' | sort | uniq -c | sort -nr | less Was hier passiert, möchte ich kurz erklären:

Ruby On Rails: Date Helper-Funktion time_ago_in_words in deutsch

Ruby On Rails: Date Helper-Funktion time_ago_in_words in deutsch
Die tolle Ruby -Funktion time_ago_in_words bzw. distance_of_time_in_words und distance_of_time_in_words_to_now aus dem Rails-Framework zeigt die vergangene Zeit seit einem bestimmten Zeitpunkt in Worten an. Wer das Ganze für Rails-Versionen kleiner 2.2 in deutsch haben möchte, kann folgende ins Deutsche übersetzte Funktion einfach in den ApplicationHelper unter app/helpers/application_helper.rb einfügen: def distance_of_time_in_words(from_time, to_time = 0, include_seconds = false) from_time = from_time.to_time if from_time.respond_to?(:to_time) to_time = to_time.to_time if to_time.respond_to?(:to_time) distance_in_minutes = (((to_time - from_time).abs)/60).round distance_in_seconds = ((to_time [...]

jQuery: Select Wert auslesen

Weil ich öfters gefragt werde, hier mal ein kurzes Tutorial, wie ich den Wert des aktuell gewählten Wertes eines Selects mit jQuery auslesen kann. Eigentlich funktioniert das wie mit anderen Input-Feldern auch, nämlich mit der Funktion „val“. Angenommen, wir haben folgende Selectbox: Hersteller Audi Opel Mercedes Volkswagen Den Wert der aktuell gewählten Option erhalten wir mit: $('#hersteller').val(); Möchten wir den Text, also Inhalt [...]

SSL / https in der robots.txt ausschließen

Über SSL indizierte Seiten können in Google und anderen Suchmaschinen Probleme mit doppelten Content, sowie unnötiges indizieren der Webseite und somit Resourcenverschwendung verursachen. Hier eine einfache Methode, den Zugriff von Suchmaschinen auf die eigene Webseite per SSL zu verhindern. Man nehme das Apache-Modul mod_rewrite und verweisst über eine RewriteRule einfach auf eine andere robots.txt Datei, wenn diese per https angefordert wird. Einfach in der .htaccess-Datei folgendes hinzufügen oder neu anlegen, falls nicht vorhanden: RewriteEngine on RewriteCond %{HTTPS} on RewriteRule ^robots\.txt$ robots_https.txt Die Datei robots_https.txt sollte so aussehen, um alle Suchmaschinen-Bots (Googlebot etc.) und Seiten [...]

Gratis Domain-Weltkarte für Blogger von united-domains

Gratis Domain-Weltkarte für Blogger von united-domains
United-Domains verschenkt an alle Blogger Ihre Domain-Weltkarte im laminierten Großformat 120 cm x 60 cm. Die Karte zeigt alle Länder-Domains (ccTLD’s) auf einer Weltkarte und bietet ebenso eine Übersicht über alle Länder-Codes mit Längen- und Breitengraden. Alles was ein Blogger dafür tun muss, ist einen kurzen Artikel zu schreiben, auf United-Domains oder die Domain-Weltkarte zu verlinken und schon kann man sein Büro mit dieser Karte verschönern. Mehr Infos zur Aktion gibt es hier bei United-Domains . i.ch ma.ch m.it – dank.es. [...]

301 Weiterleitung einer Website per mod-rewrite, PHP, Perl und Ruby

301 Weiterleitung einer Website per mod-rewrite, PHP, Perl und Ruby
Wenn sich die Domain oder Url einer Website geändert hat, empfiehlt sich eine Weiterleitung auf die neue Adresse mit dem HTTP-Statuscode 301 (Moved Permanently). Der Code 301 deshalb, damit auch Suchmaschinen wie Google wissen, das sich die Adresse für immer geändert hat und nur die neue Url verwendet werden soll. Google berücksichtigt hier auch den Pagerank und ordnet diesen der neuen URL zu. Die Technik Technisch gesehen werden vom Webserver im HTTP 2 Zeilen an den Client (Nutzer mit Browser, Suchmaschine) gesendet. Eine mit dem Statscode und eine mit dem Ziel der Weiterleitung: HTTP/1.1 301 Moved Permanently Location: http://www.neue-url.de/pfad/zur/datei.htm Eine HTTP-Sitzung per Telnet auf Port 80 sieht dann zum Beispiel so aus: # telnet alte-domain.de 80 Trying 12.34.56.78... Connected to alte-domain.de. Escape character is '^]'. GET / HTTP/1.1 Host: alte-domain.de HTTP/1.1 301 Moved Permanently Date: Thu, 25 Feb 2009 20:06:55 GMT Server: Apache/2.2.11 Location: http://neue-domain.de/ Content-Length: 225 Connection: close Content-Type: text/html; charset=iso-8859-1 301 Moved Permanently Moved Permanently The document has moved here . Connection closed by foreign host. mod_rewrite – die Lösung Um dies mit Hilfe des Webservers Apache zu lösen, hilft uns das Modul Rewrite, kurz mod_rewrite . Hat man Zugriff auf die Konfigurationsdatei des Webservers, kann man die Rewrite-Weiterleitung im VirtualHost , in der Directory – oder Location -Direktive vornehmen. Anonsten erstellt man eine .htaccess -Datei und nimmt die Konfiguration hier vor. Um mod_rewrite zu aktivieren, benötigen wir folgende zwei Zeilen: RewriteEngine on RewriteBase /

Selectbox mit Prototype per Ajax befüllen

Selectbox mit Prototype per Ajax befüllen
Ich habe gestern mit einem Kollegen versucht, eine Selectbox mit dem Javascript-Framework Prototype per Ajax zu füllen. Mit jQuery – was wir in letzter Zeit mehr einsetzen – keine grössere Sache. Mit Prototype aber mussten wir etwas grübeln. Da ich in Google nicht wirklich fündig geworden bin, gibt es hier nun ein Beispiel. (Und ich kann gleich das Syntax-Highlighting in WordPress testen :-)