Avatar billede 3xm Nybegynder
27. oktober 2004 - 13:41 Der er 5 kommentarer og
1 løsning

gruppering af regler i .htaccess afhængigt af domæne

(dette er en forlængelse af spørgmålet her: http://exp.dk/spm/553261)

jeg har 2 domæner der peger samme sted hen, lad os sige domæne1.dk og domæne2.dk

kan man i sin .htaccess-fil sætte grupper af regler der kun virker på det ene af domænerne, og andre grupper der kun virker på det andet?

fx:

---

RewriteCond  %{HTTP_HOST}  ^domæne1.dk$ {
  RewriteRule  ^/$ /index.php?d=d1&side=forside
  RewriteRule  ^billeder/$ /index.php?d=d1&side=billeder
  RewriteRule  ^filer/$ /index.php?d=d1&side=filer
  RewriteRule  ^links/$ /index.php?d=d1&side=links
}

RewriteCond  %{HTTP_HOST}  ^domæne2.dk$ {
  RewriteRule  ^/$ /index.php?d=d2&side=forside
  RewriteRule  ^kunder/$ /index.php?d=d2&side=kunder
  RewriteRule  ^produkter/$ /index.php?d=d2&side=produkter
  RewriteRule  ^links/$ /index.php?d=d2&side=links
}

---

jeg ved godt at { og } nok ikke er rette syntaks i en apache-konfiguration, men der må da findes noget lign.?

=)
Avatar billede Slettet bruger
27. oktober 2004 - 18:38 #1
Nu klipper jeg lige fra det andet spørgsmål. Jeg opdagede nemlig, at der manglede et ! (som betyder NOT:

RewriteCond  !%{HTTP_HOST}  ^d1.dk$
  RewriteRule  /  -  [S=2]
  RewriteRule  ^laks/?$ /laks.jpg
  RewriteRule  ^tun/?$ /tun.jpg

RewriteCond  !%{HTTP_HOST}  ^d2.dk$
  RewriteRule  /  -  [S=2]
  RewriteRule  ^ole/?$ /ole.html
  RewriteRule  ^per/?$ /per.html


Det er jo kun hvis det IKKE er domæne 1, at den skal udføre den næste regel, der springer de andre over.

Og hvis det virker tager du bare pointene selv. Jeg skal ikke have 200 for at rette såden en dum fejl, som jeg selv havde begået.
Avatar billede 3xm Nybegynder
27. oktober 2004 - 19:10 #2
SÅ virker det nok... Men kan man ikke lave en løsning uden de tal? Det ville være rarest ikke at skulle spekulere på det.

Og så deler vi de 200 point...

=)
Avatar billede Slettet bruger
27. oktober 2004 - 19:28 #3
Jeg har læst og læst på http://httpd.apache.org/docs/mod/mod_rewrite.html og http://httpd.apache.org/docs/misc/rewriteguide.html uden at kunne finde nogen form for kontrolstrukturmuligheder udover skip-flaget (Med mindre man benytter sig af et eksternt program med RewriteMap).

Der er også mulighed for at sætte et [C]-flag på RewriteRule, hvis en række regler kun skal udføres, så længe de matcher og resten derefter skal ignoreres.

Og nej. Jeg vil ikke have point for det udråbstegn. Det burde have været med i mit forslag i det oprindelige spørgsmål.
Avatar billede 3xm Nybegynder
27. oktober 2004 - 19:44 #4
jeg har også læst det hele adskillige gange rundt omkring. jeg synes bare det virker underligt at der lige er et hul i fleksibiliteten der, men det er vel også sjældent at man kører flere domæner på samme server fra samme mappe.

du skal have halvdelen af pointene her fordi det hele er 200 point værd, og du har kun fået 100 for den anden. ikke fordi du har sat et udråbstegn.

=)
Avatar billede Slettet bruger
27. oktober 2004 - 19:50 #5
Jaja, hvis det absolut skal være, så lad mig da bare få dem. ;-)
Avatar billede 3xm Nybegynder
27. oktober 2004 - 19:59 #6
...det skal det.

hov. nu fik du dem alle.

=)
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
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

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