![]() |
Hjälp med mod-write/.htaccess!
Hej!
Jag skulle vilja ha hjälp med en .htaccess fil. Det jag vill göra är: nick.domain.se/12345 (i webbläsaren) = domain.se/?nick=nick&id=12345 Tacksam för svar! |
Först måste du se till att du har så kallad wildcard DNS för subdomänen.
Skapa ett nytt A record med *.domain.se som pekar mot din sajts IP nummer. Sedan måste du skapa en wildcard ServerAlias i din httpd.conf under VirtualHost. Ändra: ServerAlias www.domain.se domain.se Till: ServerAlias www.domain.se domain.se *.domain.se Sedan ändra .htaccess till följande (borde funka, men inte ej testat): Options +FollowSymLinks Options +Indexes RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} !www.domain.se$ [NC] RewriteCond %{HTTP_HOST} ^(www.)?([a-z0-9-]+).domain.se [NC] RewriteRule ^([0-9]+)$ ?nick=%2&id=$1 [NC,L] Kort beskrivning: Vi ser att förfrågan inte är med www och att subdomänen endast har a-z och 0-9 som vi även fångar i varabeln %2. Både Stora och små bokstäver går bra (flaggan NC). Sedan kan vi göra en vanlig omskrivning där vi använder %2 och såklart $1. Förfrågan måste börja och sluta med endast siffror. |
Jag är ute efter precis detta men får det ej att fungera.
Citat:
Citat:
Citat:
http://hejsan.fotoblogg.me/123 |
"Skapa ett nytt A record med *.domain.se som pekar mot din sajts IP nummer."
Funkade perfekt för mig. Tack! |
Bra att det funkade Lando.
elitasson, Problemet är denna raden: RewriteRule ^([0-9]+)$ ?nick=%2&id=$1 [NC,L] Lägg till flaggan R (redirect) så kan du tydligare se vad som händer. Alltså [NC,L,R] Googla och läs på om mod_rewrite, till exempel min guide för att ändra denna raden. Kanske detta funkar: RewriteRule ^([0-9]+)$ index.php?nick=%2&id=$1 [NC,L] Alternativt kan du ju fånga användarnamnet med hederlig PHP istället med explode(".", $_SERVER["HTTP_HOST"]) och bara använda mod_rewrite för id. Typ: RewriteRule ^([0-9]+)$ index.php?id=$1 [NC,L] |
PS: Ni kanske även vill använda er av dessa villkor så att ni inte krockar med existerande filer och mappar:
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d |
Alla tider är GMT +2. Klockan är nu 21:23. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson