Weiterleitungen

10. Februar 2008

Durch die Wochenend Beilage des Reduxo Blog, habe ich einen schönen Artkel zum Thema Weiterleitungen gefunden. Darin wird beschrieben wie man diese realisieren kann mit .htaccess, PHP und Mod_rewrite. Jörg Kruse hat dazu einen entsprechenden Artikel geschrieben, hier nur die relevanten Codezeilen, Details findet ihr im besagten Artikel:

Redirect permanent /bla.html http://www.neue-domain.de/bla.html

<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.neue-domain.de/bla.html");
header("Connection: close");
?>

RewriteEngine On
RewriteRule ^(.*)\.html$ http://www.neue-domain.de/$1.html [R=301,L]


htaccess Online Editor

25. November 2007

Ein sehr nützlichen Service, habe ich bei Dr. Web im Blog gefunden. Im Artikel htaccess Online Editor wird ein Service präsentiert der es erlaubt ganz bequem .htaccess Dateien mit entsprechenden Passwörtern zu generieren, unter anderem:

Der htaccess Online Editor ist eine gute Idee. Wichtige Einstellungen für Apache-Server können hier beinahe im Vorübergehen angelegt werden. Dazu gehören neben einem Passwortschutz auch Weiterleitungen, Standardseiten, Zugriffbeschränkungen und Fehlerabfangseiten. Das klappte mit den passenden Anleitungen schon immer manuell, Fehler schleichen sich aber gern ein, vor allem wenn man ungeübt ist. Wer sich gar nicht auskennt, lässt aber besser ganz die Finger davon.


Mit PHP .WML generieren

6. September 2007

Wie bereits im Beitrag Mobile Web Design ersichtlich, beschäftige ich mich grade mit dem Mobile Web. Somit habe ich angefangen mit WML ein wenig rum zu experimentieren, da es völlig uninteressant wäre ohne dynamischen Content, wurde ich schnell eingebremst. Denn um zum Beispiel mit PHP entsprechende .WML Seiten generieren zu können müßen entsprechende Rahmenbedingung auf dem Webserver geschaffen werden.

In meinen konkreten Fall, bei einem Kundenprojekt das bei 1&1 gehosted wird, muß man eine .htaccess Datei im entsprechenden Verzeichnis anlegen und dort folgendes eintragen (Danke an Joerg Behrens aus de.comp.lang.php.misc):

AddType x-mapp-php4 .php .wml
DirectoryIndex index.wml

Dies hat zur Folge, das nun auch PHP Anweisungen innerhalb von Dateien mit der Endung .WML ausgeführt werden. Des Weiteren legt man sinnigerweise hier auch die Startseite des Angebots fest.

Nun schaut man sich generell an wie das Standard-Konstrukt einer WML Seite aussehen muß, da noch nicht alles 100% wasserdicht ist, was die Standardisierung angeht, schaut man sich halt aktuelle Angebote an. Daraus resultiert dann folgendes Konstrukt, das durchgängig genutzt wird:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="home" title="Mobile Web">
Hello World!
</card>
</wml>

Da aber nun PHP versuchen würde <? zu interpretieren, müßen wir diese Zeile mit PHP generieren mit einem entsprechenden Header der die Codierung der Seite festlegt und fügen letztendlich noch den codetechnischen Klassiker ein:

<?php
header("Content-Type: text/vnd.wap.wml;charset=UTF-8");
print("\n\n<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="home" title="Mobile Web">
<?php echo "Hello World"; ?>
</card>
</wml>

Und optimalerweise sollte somit in unserem WAP Browser (z.B. WinWAP) dort “Hello World!” stehen.


mod_rewrite: www.foo.com auf www.foobar.com/sub/

29. Juli 2007

Folgende Aufgabenstellung, beim Aufruf einer bestimmten Domain (foo.com) die auf foobar.com gerichtet ist, soll aber auf foobar.com/sub/ weitergeleitet werden. Dies wird im Alltag nötig, wenn zum Beispiel eine Domain noch nicht komplett umgezogen ist und man beim vorhandenen Provider nur eine IP Weiterleitung einrichten kann/darf.

Dies kann aber mit dem mod_rewrite des Apache Webservers gelöst werden. Man muß nur eine .htaccess Datei in der Root anlegen (falls nicht bereits vorhanden) und diese mit den mod_rewrite Anweisungen füllen. Leider muß der Provider mod_rewrite auch unterstützen, sonst funktioniert es nicht. Dies kann man ganz einfach testen, mit zum Beispiel folgender Anweisung:

# mod_rewrite

Options -MultiViews
RewriteEngine on

RewriteRule ^/?tolle-domain/$ http://www.foo.com

Hier wird zum Beispiel beim Aufruf von www.foo.com/tolle-domain/ wieder auf www.foo.com geleitet.

… in progress, stay tuned …


Follow

Bekomme jeden neuen Artikel in deinen Posteingang.