Avatar billede rax Praktikant
16. januar 2009 - 00:11 Der er 11 kommentarer og
1 løsning

Problemer med URL rewrite

Hej eksperter

Jeg står med et problem med URL rewrite på mit php websted, som jeg ganske enkelt ikke kan forklare.

Kort fortalt, har jeg udviklet en side for et online casino, som skal smides live nu. Alting virker perfekt på mine testservere, både min lokale WAMP og min hostede test-server.
Problemet er, at URL rewrites ikke virker efter hensigten, når sitet uploades hvor det skal hostes.

Siden skal hostes på følgende link: http://www.vegasregalcasino.com , og problemet er under games. Hvis man vælger "games" i toppen og derefter vælger en spil-gruppe i menuen til venstre, skifter billedet ikke. Dette skyldes, at URLen: http://www.vegasregalcasino.com/games/en/progressive-slots/ ikke omskrives korrekt. Følgende URL virker efter hensigten: http://www.vegasregalcasino.com/games.php?la=en&group=progressive-slots

Det underlige er, at det virker fint på mine test-servere, men ikke der hvor sitet skal hostes. Jeg har fået hjælp af jakobdo og coderdk i en tidligere tråd (http://www.eksperten.dk/spm/856749) til at skrive URL rewriten i .htaccess dokumentet, og det er vist herunder:

ErrorDocument 404 /404.php

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-F
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^news/([a-z]{2})/([0-9]*)/?$ shownews.php?la=$1&newsid=$2
RewriteRule ^games/([a-z]{2})/([a-z0-9-]*)/?$ games.php?la=$1&group=$2
RewriteRule ^games/([a-z]{2})/([a-z0-9-]*)/([a-z0-9-]*)/?$ games.php?la=$1&group=$2&game=$3
RewriteRule ^([a-z0-9-]+)/([a-z]{2})/?$ $1.php?la=$2

Da det virker på mine servere, men ikke hos udbyderen, antager jeg, at det er hos dem problemet ligger. Det skal siges, at de har URL rewrite slået til, og at andre kunder hos dem anvender det uden problemer.
Jeg ved, at de har Apaches MultiView slået til, hvilket var det første jeg mistænkte som værende et problem, især efter at have skimmet denne tråd: http://www.webmasterworld.com/apache/3595094.htm

Dog har udbyderne, efter henvendelse fra mig, slået MultiView fra for at se om problemet stadig bestod, hvilket det gjorde. Derfor skriver jeg nu herinde.

Håber i kan hjælpe mig videre. Jeg er ret grøn indenfor URL rewrite, men min logik fortæller mig, at når det virker som det skal på mine testservere, men ikke hos udbyderen, er det dér, problemet ligger.

Takker for jeres tid og hjælp. Den er, som altid, yderst værdsat!
Avatar billede showsource Seniormester
16. januar 2009 - 00:47 #1
hmm, det første jeg ville prøve, var et php script med:

<?php

echo"<pre>";

print_r(apache_get_modules());

echo"</pre>";

?>

og se hvad den viser
Avatar billede rax Praktikant
16. januar 2009 - 02:03 #2
showsource: enig! desværre har jeg ikke mulighed for det, da jeg kun kan skrive kode, og sende det til udbyderne, hvorefter de hoster det. Jeg har kun deres garanti for, at de forskellige moduler er aktiveret.
Avatar billede erikjacobsen Ekspert
16. januar 2009 - 10:11 #3
Det er et sjovt problem du har. Kig på http://www.vegasregalcasino.com/.htaccess
Man må ikke kunne se filer, der starter med .ht på en Apache webserver. Og http-headeren siger, at den kører Apache. Det er dermed en simpel opsætningsfejl på serveren.
Avatar billede erikjacobsen Ekspert
16. januar 2009 - 10:12 #4
Mere præcist: Der er én opsætningsfejl omkring .ht-filer, og dermed en vis sandsynlighed for andre fejl tillige.
Avatar billede rax Praktikant
16. januar 2009 - 16:19 #5
hmm, interessant pointe.. desværre er udbyderne ret stædige, og hævder, at problemet (og fejlen) er min, ikke deres. Men jeg vil naturligvis gøre dem opmærksomme på det!
Avatar billede rax Praktikant
16. januar 2009 - 16:20 #6
lige en ting til, hvordan ser du i headeren, at det er en Apache server?
Avatar billede erikjacobsen Ekspert
16. januar 2009 - 16:45 #7
Date: Fri, 16 Jan 2009 15:44:13 GMT
Server: Apache
Content-Length: 211
Keep-Alive: timeout=15, max=98
Connection: Keep-Alive
Content-Type: text/html; charset=iso-8859-1

....hvis man har en browser, der kan.

Hvis problemet er uløseligt, som du beskriver det, så må du jo finde på noget andet...
Avatar billede rax Praktikant
16. januar 2009 - 17:23 #8
aah ok, hvilken browser bruger du til at se header informationer?
Avatar billede rax Praktikant
16. januar 2009 - 17:42 #9
nå, kan se at problemet er blevet løst nu.. linksne virker, og man kan ikke længere navigere til .htaccess filen. Jeg går ud fra, at de har lavet nogle ændringer på deres side, som har løst problemet. Enig?
Avatar billede erikjacobsen Ekspert
16. januar 2009 - 18:10 #10
Man kan ikke længere se .htaccess filen - virker dine url-rewrites?

Browser? Firefox, med en eller anden extension.
Avatar billede rax Praktikant
16. januar 2009 - 18:19 #11
ja, url rewrite fungerer som de skal nu, så jeg går ud fra de har rettet problemet på deres side (da jeg jo ikke har gjort noget).

tænkte nok det var firefox + mystisk extension :)
Avatar billede rax Praktikant
05. juli 2010 - 12:58 #12
Dette er et gammelt spørgsmål, som jeg i forbindelse med oprydning ønsker at lukke. Derfor har jeg selv afgivet et svar.

Hvis jeg har overset en besvarelse, som fortjener point, undskylder jeg på forhånd, og beder jer om at kontakte mig, så point kan blive fordelt.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester