Month: November 2012

The requested URL is too large to process.

Eine interessante Meldung, vor allem weil es dem Chrome Browser handelt und bei der Webseite die Google Webmaster Sitemap, bei dem Versuch meine Nachrichten bzgl. den Crawling-Fehlern, zu löschen. Lustig auch das Title Tag “Error 414 (Request-URI Too Large)!!1” fehlt nur noch das hinten “elf” steht. Nach einer Überprüfung (www.zeichenzähler.de) stellte sich heraus das die URL tatsächlich 3130 Zeichen enthält. In einer Antwort auf Stack Overflow (http://stackoverflow.com/questions/6955302/http-error-414-the-request-url-is-too-long) wird die praktikable Länge mit 2000 Zeichen angegeben.

Der Wikipedia Artikel Query String (http://en.wikipedia.org/wiki/Query_string) benennt explizit den Internet Explorer und das dieser nur maximal 2083 Zeichen in der URL versteht. Ich bin mir nicht sicher, warum die URL in meinem Fall so lang ist bzw. die Daten nicht mit POST übertragen werden. Trotz der Fehlermeldung wurden meine Nachrichten gelöscht, was ich jetzt unbedingt erwartet hätte.

TYPO3 Merksatz #11: TYPO3 ist eine Familie

Auf der T3CON12 in Stuttgart hat Robert Lemke das neue Namens-Konzept von TYPO3 vorgestellt. Dazu gibt es auf der offiziellen Seite auch verschiedene Artikel (http://typo3.org/news/article/a-brand-new-way/, http://typo3.org/the-brand/a-brand-new-way/). Vollkommen richtig wäre es in Zukunft TYPO3 CMS bzw. TYPO3 Neos und TYPO3 Flow zu sagen. Jedoch steht nur TYPO3 weiterhin für das CMS und Neos und Flow können auch ohne den TYPO3 Prefix betitelt werden.

[random_content group_id=”211″ num_posts=”1″]

Selenium PHP Browser Window Size

Oftmals öffnet sich das Browser-Window zu klein oder zu groß bzw. gibt es ggf. Anforderungen, dass der Browser mit einer bestimmten Größe geöffnet werden soll. Auch dies kann in Selenium RC bzw. dem Selenium Server hinterlegt werden. Gesteuert wird die Größe über die bekannten JavaScript Funktionen. Somit müssen nur die entsprechenden JavaScript Befehle innerhalb des Fensters ausgeführt werden. In PHP umgesetzt sieht dies wie folgt aus:

[PHP]
public function setUp()
{
$this->setBrowser(‘*googlechrome C:/Programme/Google/Chrome/Application/chrome.exe’);
$this->setBrowserUrl(‘http://www.example.com’);
$this->setSpeed(500);
}

public function testMyTestCase()
{
$this->getEval(“window.resizeTo(1280, 768); window.moveTo(0,220);”);
$this->open(“/login”);
}
[/PHP]

Neben der Window Size habe ich außerdem noch die Position des Fensters angegeben. Dabei habe ich 220 Pixel Abstand von oben gelassen, damit ich die Befehlsausgabe im Selenium Proxy weiterhin im Blick habe.

ASCII-Art :: Coca Cola

Gerade gelesen das Coca Cola (http://www.coca-colacompany.com/) die neue Homepage gelauncht hat und bei einem Blick in den Quellcode nicht nur festgstellt, das die Amazon Cloudfront benutzt, sondern auch ein schönes ASCII-Art hat. Wer mit dem Begriff nicht gleich etwas anfangen kann, sollte einfach mal bei Google danach suchen, es finden sich im Internet eine Reihe von Gallerien (http://www.ascii-art.de/). Gerade entdeckt, das es auch einen Wikipedia Artikel (http://de.wikipedia.org/wiki/ASCII-Art) gibt, der beschreibt worauf es bei ASCII-Art ankommt und weitere interessante Beispiele zeigt.

ascii-art-coca-cola

Fraglich bleibt ob der Coca Cola Schriftzug manuell oder maschinell erstellt wurde? Aufgrund der verwendeten Zeichen würde ich tippen, das ein Programm benutzt wurde, jedoch habe ich bisher noch nicht mit einem Programm gearbeitet und kann es nur schätzen.

Google Webmaster Sitemap: Gekürzte Antwort Teil 2

Wie angekündigt, habe ich meine Seite nochmals mit wGet gespidert, zunächst nach der selben Methode wie im Artikel “Googlebot can’t access your site” beschrieben. Um das Logfile zu minimieren habe ich zusätzlich die Option -A html hinzugefügt, damit nur html Dateien und keine Bilder, JavaScript und Anderes herunterladen geladen wird. Im Logfile konnte ich keine Auffälligkeiten entdecken.

Als nächstes schrieb ich zwei kurze PHP-Skripte:

[PHP]
// file: start.php

$link = mysql_connect(DB_HOST, DB_NAME, DB_PASSWORD);
if (!$link) {
die(‘Could not connect: ‘ . mysql_error());
}

$db_selected = mysql_select_db(DB_NAME, $link);

mysql_query(“INSERT into statistik (ip, token, time1, script)
VALUES (‘”.$_SERVER[‘REMOTE_ADDR’].”‘, ‘”.$_SERVER[‘REQUEST_TIME’].”‘,'”.microtime().”‘,'”.mysql_real_escape_string($_SERVER[‘REQUEST_URI’]).”‘ );”);

mysql_close($link);
[/PHP]

und passend dazu auch

[PHP]
// file: stop.php

$link = mysql_connect(DB_HOST, DB_NAME, DB_PASSWORD);
if (!$link) {
die(‘Could not connect: ‘ . mysql_error());
}

$db_selected = mysql_select_db(DB_NAME, $link);

$str = “UPDATE statistik SET time2 = ‘”.microtime().”‘
WHERE ip = ‘”.$_SERVER[‘REMOTE_ADDR’].”‘ AND token = ‘”.$_SERVER[‘REQUEST_TIME’].”‘ AND script = ‘”.mysql_real_escape_string($_SERVER[‘REQUEST_URI’]).”‘;”;

mysql_query($str);

mysql_close($link);
[/PHP]

diese wurden direkt in die index.php eingebunden:

[PHP]
// file: index.php

define(‘WP_USE_THEMES’, true);

require(‘./start.php’);

/** Loads the WordPress Environment and Template */
require(‘./wp-blog-header.php’);

require_once(‘./stop.php’);
[/PHP]

Zunächst vermutete ich, das es am Favicon.ico liegen könnte

[PHP]
IP Token time1 time2 Script
6.23.4.8 1352762248 0.29693200 1352762248 0.43673200 1352762248 /5/google-webmaster-sitemap-gekurzte-antwort/2012/11/11/
6.23.4.8 1352762251 0.13867900 1352762251 /favicon.ico
6.23.4.8 1352762330 0.97333000 1352762330 0.10298000 1352762331 /5/google-webmaster-sitemap-gekurzte-antwort/2012/11/11/
6.23.4.8 1352762337 0.54685600 1352762337 /favicon.ico
[/PHP]

Also bastelte ich eines, es kam aber weiterhin zu Datenbank-Einträgen bei denen keine “time2” angegeben war.

Erst nach dem ich den WordPress Quick Cache abgeschaltet hatte, wurde auch immer eine time2 eingetragen. Mal schauen was Google bzw. Webmaster Sitemap Tools beim nächsten Crawlen sagen.