webForumDet fria alternativet

Clean URLs, hur gör man i en Apache utan Mod-Rewrite

Program & apparur Operativsystem & Program - Övrigt

5 svar · 1 365 visningar · startad av zarabud

zarabudMedlem sedan sep. 201028 inlägg
#1

Min webbsida ligger på en shared webbhosting med apache webbserver. Frågan är hur kan man koda eller manuellt fixa URL i webbsidan dvs. exempelvis istället av http://example.com/weblog/index.php?y=2000&m=11&d=23&id=5678
den ska vissas så här http://example.com/weblog/archive/00005678.html.
Tack på förhand

nitro2k01Medlem sedan aug. 20039 342 inlägg
#2

Varför utan mod_rewrite? Har inte din host stöd för det? (Isåfall, be administratören aktivera det eller byt leverantör! mod_rewrite bör vara ett absolut krav i dagens läge!)

Ett annat alternativ är att köra med ErrorDocument, vilket dock är en aning fult. Alla sidor servaras då som "404 not found" vilket säkert ogillas av sökmotererna, eftersom de tror att sidan inte finns. Det går kanske att komma runt på något sätt, men det är inte optimalt.

Dessutom måste din PHP-kod tolka URLen helt själv. Du får alltså inte id serverat i $_GET['id'] som du skulle kunna få med mod_rewrite.

ErrorDocument 404 /index.php
zarabudMedlem sedan sep. 201028 inlägg
#3

Tack nitro2k01 för svaret.
Tyvärr min host kan inte aktivera funktionen för det är en shared webbhosting på webbhotellet, vilket betyder att den ändringen kommer att påveraka alla kunder på servern.
Jag vågar inte bytta leverantören för jag har haft dem för länge sedan .
Men vad gäller den andra lösningen med ErrorDocument, kan du vara vänligt och beskriva det lite mer om det är inte besvärligt för dig .

QuidMedlem sedan juni 20006 025 inlägg
#4

zarabud skrev:

Tyvärr min host kan inte aktivera funktionen för det är en shared webbhosting på webbhotellet, vilket betyder att den ändringen kommer att påveraka alla kunder på servern.

Fast att alla får tillgång till en ny funktion kan väl bara ses som något positivt?
Dessutom finns det väl inget som påverkas om ingen har haft denna innan?

zarabudMedlem sedan sep. 201028 inlägg
#5

Tack Quid
Jag hade ingen aning om det , men jag får kontakta de och köra din argument ;)

FedetelsMedlem sedan mars 20111 inlägg
#6

webForum - Svara

Varför utan mod_rewrite? Har inte din host stöd för det? (Isåfall, be administratören aktivera det eller byt leverantör! mod_rewrite bör vara ett absolut krav i dagens läge!) Ett annat alternativ är att köra med ErrorDocument, vilket dock är en aning fult. Alla sidor servaras då som "404 not found" vilket säkert ogillas av sökmotererna, eftersom de tror att sidan inte finns. Det går kanske att komma runt på något sätt, men det är inte optimalt. Dessutom måste din PHP-kod tolka URLen helt själv. Du får alltså inte id serverat i $_GET['id'] som du skulle kunna få med mod_rewrite. Kod:

:(

134 ms totalt · 3 externa anrop · v20260731065814-full.29ac60f6
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)