Archive für die Kategorie ‘Internet’

nginx: Google+ Shortcut

Veröffentlicht am 25. Juli 2011 um 14:34 by Fabian Martin Permalink

Google+ wächst nach wie vor, und in diversen Blogs sind bereits Artikel erschienen, wie man eine Adresse nachdem Schema http://domain.de/+ auf das eigene Google+ Profil weiterleiten kann.

Die Artikel beschränken sich leider alle auf Apache, so dass sie für mich nicht anwendbar sind, da auf meinen Servern derzeit nur nginx läuft. Mit dem folgenden Code Schnipsel, klappt es aber auch damit. Schreibt die folgenden drei Zeilen einfach in die Konfiguration des vHosts, und passt die URL zu eurem Google+ Profil entsprechend an.

	location = /+ {
		rewrite ^ https://plus.google.com/110406650492357950182/about?hl=de permanent;
	}

Anschließend die Konfiguration neu laden, und schon habt ihr eine einfachere URL für euer Google+ Profil. In meinem Fall ist dies nun die Adresse http://localdev.de/+ (oder alternativ http://fabian-martin.de/+).

Lighttpd 1.4: HTTP 417 Expectation Failed

Veröffentlicht am 13. Januar 2010 um 15:22 by Fabian Martin Permalink

Versucht man mit einer cURL oder .NET Anwendung POST Daten an einen Lighttpd 1.4 Server zu senden, bekommt man die Meldung


HTTP/1.1 417 Expectation Failed

Dies liegt daran, das die Programme einen Expect: 100-continue Header senden, und als Antwort 100 (Continue) oder 417 Expectation Failed erwarten. Lighty kennt den Header jedoch nicht, und antwortet deswegen mit dem besagten 417 Expectation Failed.

Der Expect: 100-continue Header soll verhindern, das Daten an den Server gesendet werden, die nicht benötigt werden. Erkennt der Server z.B. das er die Anfrage ablehnen muss, kann er dies dem Client mitteilen, noch bevor die POST Daten übermittelt wurden.

Wer dennoch POST Daten an Lighty senden möchte, kann die folgenden Paramter anpassen:

.NET


System.Net.ServicePointManager.Expect100Continue = false;

cURL unter PHP

curl_setopt($objCurl, CURLOPT_HTTPHEADER, array('Expect: '));

cURL auf der Kommandozeile

curl -v -H "Expect: " -F "field=value" http://example.com/upload.php

Alternativ aktualisiert man auf Lighttpd 1.5. Dieser kennt den Expect: 100-continue Header und beantwortet entsprechende Anfragen korrekt.

Browser senden übrigens keinen Expect: 100-continue Header.

Google, Firefox, Magento … im neuen Jahr

Veröffentlicht am 8. Januar 2010 um 11:50 by Fabian Martin Permalink

Die erste Arbeitswoche, im neuen Jahr, ist nun fast vorbei und die Webmaster Tools zeigen das altbekannte Bild.

Weihnachten, Google, Firefox und ich

Veröffentlicht am 28. Dezember 2009 um 20:34 by Fabian Martin Permalink

Nach einem Blick in die Google Webmaster Tools, wage ich zu behaupten, dass wieder viele PCs und Notebooks verschenkt wurden.

Schade das, bei vielen Beschenkten, scheinbar der Firefox abstürzt oder Probleme beim Starten hat.

Magento: Cache einrichten

Veröffentlicht am 8. November 2009 um 18:36 by Fabian Martin Permalink

Ein frisch installierter Magento Shop kann zum Teil sehr langsam sein. Um die Geschwindigkeit zu steigern, haben die Entwickler verschiedene Caching Möglichkeiten implementiert. Standardmäßig cached Magento im Dateisystem, was bei großer Last aber nicht optimal ist.

Daneben stehen aber noch APC und memcached zur Verfügung, welche die Daten im Arbeitsspeicher behalten. Um sie zu aktivieren, müssen in der Datei app/etc/local.xml zwischen <global>…</global> folgende Ergänzungen vorgenommen werden.

APC

        <cache>
            <backend>apc</backend>
        </cache>

memcached

        <cache>
            <backend>memcached</backend>
            <memcached>
                <servers>
                    <server>
                        <host><![CDATA[127.0.0.1]]></host>
                        <port><![CDATA[11211]]></port>
                        <persistent><![CDATA[0]]></persistent>
                    </server>
                </servers>
                <compression><![CDATA[0]]></compression>
                <cache_dir><![CDATA[]]></cache_dir>
                <hashed_directory_level><![CDATA[]]></hashed_directory_level>
                <hashed_directory_umask><![CDATA[]]></hashed_directory_umask>
                <file_name_prefix><![CDATA[]]></file_name_prefix>
            </memcached>
        </cache>

Zusätzlich muss das jeweilige Modul installiert sein.

Links: