autor

Milan Kapetanov
Developer . Design . Management
| skills

balkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalkenbalken

home | tutorial | asp | mod_rewrite mit asp

nun mal ein kleiner workaround zum thema mod_rewrite mit asp...
(bei google hab ich dazu nix gefunden!)

mod_rewrite ist ein apache modul für die url manipulation. anhand von regexp regeln kann man die oft kryptischen url-adressen dynamischer webseiten umschreiben, und somit suchmaschinen-freundlicher gestalten.

mit dem iis ist ein mod_rewrite über den isapi filter möglich. allerdings wird sowas von vielen webspace providern nicht unterstützt. da nicht jeder über einen eigenen rootserver verfügt. will ich euch hier mal ein kleines beispiel zeigen wie ein mod_rewrite alternativ auf dem iis realisiert werden kann.

das ganze läuft über die 404er fehlermeldungsseite. welche bei den meisten mir bekannten webspace providern (windows, iis) frei definiert werden darf. die funktionsweise der 404er fehlermeldungsseite dürfte jedem webdesigner bekannt sein.

nun ein kleines beispiel wie sowas realisiert werden kann.

wir haben z.b. so einen link:
http://www.meinedomain.de/meineseite.asp?meine_id=1234

um das ganze suchmaschinen freundlicher zu gestalten, ändern wir den link nun so ab:
http://www.meinedomain.de/meineseite/meine_id/1234

wenn nun auf den neuen link geklickt wird meldet sich natürlich die 404er fehlermeldungsseite.
und da setzen wir jetzt an....

wir erstellen einfach ne neue 404er fehlerseite. ich nenne die mal 404.asp

in der neuen 404er seite wird nun der link zerlegt und anschließend weitergeleitet auf die vorhandene url ( http://www.meinedomain.de/meineseite.asp?meine_id=1234 )

hier nun eine komplette beispiel 404.asp, die ihr auch selbst modifizieren könnt...


<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
' dimensionieren der variablen
' ------------------------------------------------------------
dim protokol, teillinkneu, teillinkalt, meinlink, dieid, alterlink

' den variablen werte zuweisen
' ------------------------------------------------------------
protokol = "http://"
teillinkneu = "/meineseite/meine_id/"
teillinkalt = "/meineseite.asp?meine_id="
meinlink = request.serverVariables("QUERY_STRING")

' wenn der link /meineseite/meine_id/ enthält
' wird der link zerlegt und neu zusammengesetzt
' ------------------------------------------------------------
if instr(meinlink,teillinkneu)>0 then

dieid = split(meinlink, teillinkneu)
alterlink = protokol & request.ServerVariables("HTTP_HOST") & teillinkalt & dieid(1)

' der redirect zum neu zusammengesetzen link
' ------------------------------------------------------------
response.Redirect(alterlink)

end if
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>
<meta name="description" content="mod_rewrite mit asp .. milan kapetanov . www.inxus.de"/>
<meta name="keywords" content="mod_rewrite, mod, rewrite, asp, milan, kapetanov, www.inxus.de, inxus"/>
<meta name="publisher" content="milan kapetanov . www.inxus.de"/>
<title>mod_rewrite mit asp .. milan kapetanov . www.inxus.de</title>
</head>
<body>
<p>Diese Seite existiert nicht oder nicht mehr. Bitte überprüfen Sie die
Adresse</p>
<p>eine mod_rewrite 404.asp demo zum einsatz unter iss und asp. <br/>
2006 milan kapetanov .. <a href="http://www.inxus.de">inxus group</a></p>
</body>
</html>

statt dem response.redirect kann dann natürlich auch gleich die seite dargestellt werden. für die indizierung durch suchmaschinen spielt das keine rolle.

impressum | tutorial | login | zugriffe 2117