Archiv 2. Juni 2007

Samstag, 2. Juni 2007

Drupal 5.1 zickt unter Umständen bei Clean URLs

Auf einem bei Hostpoint gehosteten Web-Server eines Kunden laufen …

  • Apache 1.3.37
  • PHP 5.1.6 (als CGI)
  • Drupal 5.1, 2007-01-29

Rufe ich die Test-Seite auf, die die korrekte Arbeitsweise von „Clean URLs“ überprüft, gibt es Probleme beim Laden der Stylesheets.

Nach etwa einer geschlagenen Stunde debugging weiss ich nun endlich, wieso:

Die Funktion base_path() in /includes/common.inc, die unter anderem auch von drupal_get_css() aufgerufen wird, liefert in der obigen Server-Konfiguration (PHP als CGI, verdammt seist du!) einen falschen Pfad zurück:

Aktuelle URL: http://www.server.tld/node/8
PHP-Snippet: print($GLOBALS['base_path']);
Ausgabe: /node/

Deshalb werden die @imports auf die Stylesheets mit einem falschen Pfad versehen, was wiederum die in der .htaccess angegeben mod_rewrite-Regeln (die Zeilen sind übrigens ein Höchstmass an Effizienz, da werden meine Augen jedesmal feucht) zum Fehlglauben verleitet, die angefragten Stylesheets existierten nicht:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

Stattdessen wird die Anfrage an das Script index.php weitergeleitet, das nun text/html ausliefert und die Browser ausser Tritt bringt. Seiten werden so pro eingebundenem Stylesheet um je 10KB schwerer für den Download.

Lösung

(Gemäss problem with clean url – duplicate path and other strange issues)

Man aktiviere in der Datei /sites/default/settings.php folgende Einstellung (ca. Zeile 115):

$base_url = 'http://www.server.tld'; //NO trailing slash!

Die nun mit SEF-URLs ausgelieferte Seite funktioniert tadellos und enthält die korrekten Verweise im Header:

<style type="text/css" media="all">@import "/modules/node/node.css";</style>
<style type="text/css" media="all">@import "/modules/system/admin.css";</style>
<style type="text/css" media="all">@import "/modules/system/defaults.css";</style>
<style type="text/css" media="all">@import "/modules/system/system.css";</style>
<style type="text/css" media="all">@import "/modules/user/user.css";</style>
<style type="text/css" media="all">@import "/themes/garland/style.css";</style>
<style type="text/css" media="all">@import "/themes/garland/ride.css";</style>
<style type="text/css" media="print">@import "/themes/garland/print.css";</style>

Labels: Web

Keine Kommentare | neuen Kommentar verfassen

Samstag, 2. Juni 2007

Die Tücken spottbilliger Laptops

Mein Bruder erwägt den Kauf eines Laptops und hat mich deshalb soeben telefonisch um Rat gefragt. Er hat bei Melectronic ein preislich kaum zu unterbietendes Angebot offeriert erhalten:

  • AMD Sempron 3200+
  • 512MB RAM
  • 80GB Festplatte
  • DVD+-RW
  • Windows Vista

Kostenpunkt: 699.– (mit gleichzeitigem Abschluss eines Bluewin-Abos für 12 Monate)

Das Angebot erachte ich angesichts der Komponenten vernünftig, wobei ich mit Blick auf Windows Vista wohl doch eher 1GB RAM verbauen würde.

Ich persönlich möchte meine Workstation nicht missen – doch anscheinend bin ich mit dieser Einstellung im Vergleich zu den computerunerfahrenen Privatanwendern deutlich in der Minderheit. Heute kauft sich der gemeine Kunde einen Laptop – einerseits, weil das Ding im Gegensatz zu den grauen Kisten überhaupt nicht sperrig ist und man andererseits damit am sonnigen Sonntagmorgen auf dem Balkon im Internet herumsurfen kann.

Wie überall ist es aber auch bei dieser Produktegattung – und besonders bei dieser – so, dass man als Hersteller den billigen Kaufpreis nur offerieren kann, weil man an allen Ecken und Enden gespart hat. Folgende Punkte lassen bei mir als versierter Anwender die Alarmglocken schrillen:

  • Garantie Ausfälle von Komponenten innerhalb der Garantiezeit und der telefonische Support bei Problemen ist für den Hersteller wohl der kostenintensivste Posten. Heute findet man in den unteren Preisklassen deshalb fast ausschliesslich nur noch Geräte mit einjähriger Garantie. Im Hochpreissegment, das sich vornehmlich an Geschäftskunden richtet, geniesst man weiterhin oft eine Rundum-Versorgung während dreier Jahre. Sparfüchse müssen hingegen in Kauf nehmen, nach Ablauf der Garantiefrist innerhalb eines Jahres gleich noch einmal denselben Betrag für den Kauf eines Neugerätes aufzuschiessen (eine Reparatur lohnt sich in den seltensten Fällen). Tritt ein Fehler bereits während der Garantiefrist auf, muss man bei der Reparatur Geduld walten lassen. Es gilt sich also zu fragen: Kann ich mehrere Wochen bis ein oder zwei Monaten ohne mein Gerät auskommen? Falls die Antwort ’nein‘ lautet, sollte man sich ein Alternativgerät (z.B. ein Desktop-Rechner oder einen zweiten Laptop) leisten können
    Interessant: Melectronic bewirbt die zweijährige Garantie – falls diese tatsächlich auch für Laptops gilt, empfehle ich, solche Produkte in diesem Geschäft zu kaufen.
  • Der Preis der Kompaktheit Elektronische Bauteile vertragen weder Hitze noch Erschütterungen. Doch gerade Laptops, wegen ihrer lauten Gehäuselüfter auch unter dem Namen „Düsenjet“ bekannt, entwickeln wegen älteren und für den Mobil-Einsatz ungeeigneten Komponenten eine grosse Hitze. Die Abwärme kann viel schlechter abgeführt werden als bei den viel grösseren Gehäusen der Desktop-Rechnern. Hinzu kommt, dass beim Ausfall einer Komponente (ich denke da an das erfahrungsgemäss schwächste Bauteil: die Festplatte) die Reparatur deutlich aufwändiger, wenn für Privatanwender nicht gar unmöglich, wird, weil alle Bauteile in das kleine Gehäuse gestopft wurden. Hersteller haben in diesem Preissegment kein Geld, Ingenieure wartungsfreundliche Geräte entwickeln zu lassen.
    Auch muss man sich im Klaren sein, dass solche Geräte einen Sturz aus Tischhöhe schlecht überstehen. Widerstandsfähige Werkstoffe (Titan und andere Metalle) kommen erst bei Hochpreis-Geräten zum Zug, während bei Billig-Laptops Plastic verbaut ist. Ein ausgelaufenes LCD-Display, komische Geräusche von sich gebende Festplatten und verbogene Gehäuse lassen grüssen.
  • Veraltete CPUs (Celeron M, Pentium IV M oder AMD), ein oder meist gar zwei Generationen alt. Die Leistung mag evtl. noch gerade passabel sein – die Leistungsaufnahme ist es aber nicht. Dies führt a) zu einer kurzen Akku-Laufzeit und b) zu einer nicht zu vernachlässigenden Hitze-Entwicklung. Dasselbe gilt natürlich auch für die anderen Komponenten: Chipsätze, Grafikkarten, RAM-Bausteine, Festplatten – das meiste stammt aus der vorletzten Generation und kann das System ausbremsen.
  • Schweres Gerät. Von Portabilität ist in dieser Preisklasse nichts zu spüren. Muss das Gerät wirklich von A nach B transportiert werden, kann man den Aufwand gleich mit dem wöchentlichen Kraft-Training in Abzug bringen.

Akku raus!

Ein Tipp zum Schluss: Wenn das Gerät hauptsächlich zu Hause an der Steckdose eingesetzt wird, empfiehlt es sich, den Akku aus dem Gerät zu nehmen. Bei konstanter Verbindung mit dem Stromnetz reduziert sich die Kapazität der Batterie in wenigen Monaten spürbar.

Tags: , ,
Labels: Allgemein

Keine Kommentare | neuen Kommentar verfassen