Schlagwort-Archive: apache

CouchDB – Die total relaxte Datenbank

CouchDBWer sich, aus welchen Gründen auch immer, mit Datenbanken beschäftigen muss, der wird mit Sicherheit schon an SQL-basierten Datenbanken vorbeigekommen sein. Der ein oder andere mag sich dabei auch gefragt haben, ob das wirklich so kompliziert sein muss, denn das sind relationale Datenbankmodelle, zumindest für meinen Kopf.

Eine mögliche Antwort auf diese Frage, könnte "Nein" lauten. Belegen werde ich diese knappe Aussage auch, und zwar mit CouchDB. CouchDB ist zum einen eine dokumentbasierte Datenbank. Das kann man sich so vorstellen, wie eine Ansammlung von Word/OpenOffice-Dokumenten, von denen jedes Dokument einen Datensatz, im Vergleich (kein allzu Guter) also eine Zeile aus einer SQL-Tabelle darstellt. Ob das jetzt zur Vereinfachung beiträgt, sei mal dahingestellt. Viel wichtiger ist, und das ist Punkt 2, dass CouchDB nicht Schema-basiert ist. Man muss also sein Datenbankmodell nicht bis ins kleinste Detail austüfteln bevor man mit der Programmierarbeit startet, sondern man entspannt sich erstmal und haut dann einfach in die Tasten.

Viel besser erklären als ich, können das Konzept hinter CouchDB allerdings Jan Lehnardt und Alexander Lang, die im Chaosradio Express Nummer 125 einen zwar langen, aber sehr interessanten Einblick in die Welt des unglaublich entspannten Datenbankens gewähren.

Und damit die Zeit während des Downloads nicht so lang wird, hier noch ein paar Links zum Thema mit auf dem Weg:

CouchDB - Offizielle Seite

CouchDB - en.wikipedia.org

CouchDB - A use case - kore-nordmann.de

Falls Interesse besteht würde ich auch ein kleines Tutorial zur Kompilierung der aktuellen Version unter Ubuntu bereitstellen. Bedarf kann in den Kommentaren angemeldet werden 😉

Quicktipp – Apache neu starten ohne Verbindungen zu beenden

Manchmal ist es nötig einen Apache Webserver neu zu starten, um zum Beispiel eine neue Konfiguration zu aktivieren oder ähnliches. So weit so gut. Was aber wenn gerade einige hundert Nutzer Downloads vom betroffenen Server ziehen und ihr denen nicht den Download kappen wollt? Ganz einfach, dafür gibt es beim Apachen das Kommando 'graceful', das wie folgt aufgerufen werden kann:

Für Ubuntu-basierte Systeme:
sudo /etc/init.d/apache2 graceful

Das sorgt dafür das der Server an sich neu gestartet wird, aber die child-Prozesse, die für die einzelnen Nutzer verantwortlich sind sich erst beenden wenn sie nicht mehr gebraucht werden. Das heißt die noch laufenden child-Prozesse laufen mit der alten Konfiguration weiter und neu gestartete laufen bereits mit der neuen. Praktisch, nicht wahr?

Content-Klau und "MöchtegernProblogger"[Update]

Jaja, Content-Klau ist fies böse und gemein, aber was fast genau so schlimm ist sind die Leute die darüber berichten und fadenscheinige Tipps geben, wie man das ganze unterbindet. Vom kürzen des Feeds ist da die Rede, von Copyright-Hinweisen in jedem Beitrag, von Brandings in Bildern...das Ergebnis solcher Lösungen:

1. Der Content erscheint immer noch auf der Seite des Content-Diebes, weil den das ganze nicht die Bohne interessiert.

2. Deine Leser laufen weg, weil sie der ganze Copyright- und Wasserzeichen-Scheiß nervt.

Wer bereit ist das zu riskieren, bitte, hört ruhig auf die selbst ernannten deutschen Problogger, die man meist an ihrem Bild-Zeitung-artigen Schreibstil erkennt, ich würde mir das nochmal genau überlegen.

Dabei ist es so viel einfacher den Dieb auszusperren:

Weiterlesen

Webserver ruhig stellen

apache.testseite.gifMal zur Abwechslung was Sicherheitsrelevantes. Auf der Suche nach Sicherheitslücken grasen Programme jeden Tag Server im Internet ab, nach ungepatchten Systemen und Diensten. Da wäre es natürlich praktisch wenn zum Beispiel der Webserver seine Versionsnummer nicht jedem der sie haben will preis geben würde. Und dabei ist es ganz einfach dem Apachen die Zunge zu verknoten:

In der Datei 'apache.conf' die Zeile

ServerTokens All

in

ServerTokens Prod umschreiben.

Dann noch schnell den Server neu starten und Apache zeigt anstatt diesem Header:

HTTP/1.1 200 OK
Date: Sun, 19 Aug 2007 18:13:32 GMT
Server: Apache/2.2.3 (Ubuntu) PHP/5.2.1 mod_perl/2.0.2 Perl/v5.8.8
Content-Type: text/html; charset=UTF-8

nur noch diesen hier an:

HTTP/1.1 200 OK
Date: Sun, 19 Aug 2007 18:16:08 GMT
Server: Apache
Content-Type: text/html; charset=UTF-8

Wie man das ganze auch noch bei PHP erreicht zeigt der Ursprungs-Artikel auf adminday.de. Ausserdem gibt es auf adminlife.net eine Anleitung wie man lighttpd die Geschwätzigkeit austreibt.

Noch mehr Sicherheitstipps für den Apache Webserver gibt es auf securityfocus.com.