Avatar billede dennism Nybegynder
17. februar 2006 - 15:20 Der er 20 kommentarer og
2 løsninger

Apache: subdomæne?

En af mine brugere har f.eks denne side på mit domæne:
www.myhp.dk/ns-ekstra

Hvordan kan jeg lave sådan, at ns-ekstra.myhp.dk peger på www.myhp.dk/ns-ekstra?

Går ud fra, at der er noget som skal laves i Apache.
Avatar billede dennism Nybegynder
17. februar 2006 - 18:42 #1
Virkelig ingen der kan hjælpe?
Avatar billede webt Nybegynder
18. februar 2006 - 11:04 #2
Du kan lave det via mod_rewrite...

RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^([^.]+)\.domain\.com [NC]
RewriteRule ^.* - [E=subdomain:%1]
RewriteRule ^$ http://domain.com/%{ENV:subdomain} [R=301,L]

fx. test.domain.com vil redirecte til domain.com/test

Ellers skal du vist igang med noget virtual host i httpd.conf
Mvh
Martin
Avatar billede dennism Nybegynder
18. februar 2006 - 11:21 #3
Skal denne placeres i en .htaccess fil i roden, eller hvordan?
Avatar billede webt Nybegynder
18. februar 2006 - 11:55 #4
Yes, kan lige forklare hvad den gør og glemte lige noget kan jeg se:

RewriteEngine On ## start rewrite engine
RewriteCond %{HTTP_HOST} !^$ ## rewrite ikke hvis tom
RewriteCond %{HTTP_HOST} !^www\. [NC] ##rewrite ikke www
RewriteCond %{HTTP_HOST} ^([^.]+)\.domain\.com [NC] ##rewrite alle andre
RewriteRule ^.* - [E=subdomain:%1] ##hent subdomaindomain strengen ud
RewriteRule ^$ http://domain.com/%{ENV:subdomain} [R=301,L] ##rewrite med en 301 som fortæller fx søgemaskiner at siden ligger permenent på domain.com/sub

Mvh
Martin
Avatar billede dennism Nybegynder
22. februar 2006 - 11:50 #5
Jeg har denne:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^([^.]+)\.myhp\.dk [NC]
RewriteRule ^.* - [E=subdomain:%1]
RewriteRule ^$ http://myhp.dk/%{ENV:subdomain} [R=301,L]

Men det lader til, at min side går nok, når jeg har oprettet denne.
Avatar billede dennism Nybegynder
22. februar 2006 - 11:52 #6
admin.myhp.dk virker som den skal, men når jeg bare besøger myhp.dk står den bare og tænker.
Avatar billede dennism Nybegynder
22. februar 2006 - 13:45 #7
Desuden bryder jeg mig heller ikke om, at adressen i adresselinien bliver ændret til myhp.dk/admin. Men må gerne forblide admin.myhp.dk. Kan du hjælpe med det?

Der er stadig det problem, at den tænker og tænker når man besøger www.myhp.dk
Avatar billede dennism Nybegynder
25. februar 2006 - 10:29 #8
Kan du ikke hjælpe her?
Avatar billede ttopholm Nybegynder
25. februar 2006 - 10:37 #9
Du kan også bare lave et script på den første virtualhost, som klare det... Med en frame.
Avatar billede dennism Nybegynder
25. februar 2006 - 11:05 #10
Jeg vil hellere have det lavet som rewrite i en htaccess end som et virtualhost. Kan I ikke hjælpe mig?
Avatar billede webt Nybegynder
26. februar 2006 - 13:53 #11
Hej, sorry jeg ikke lige har haft tid til at svare... ovenstående virker fino på min server, men prøv evt. følgende i stedet:

RewriteCond %{HTTP_HOST} ^([^.]+)\.domain\.com$
RewriteCond %{1} !^www$
RewriteCond /din/absolutte/sti/til/wwww/%1 -d
RewriteCond %{REQUEST_FILENAME} !^/din/absolutte/sti/til/wwww/%1
RewriteRule (.*) /din/absolutte/sti/til/wwww/%1/$1 [l]

overordnet skulle sikre at den i hvert fald ikke kommer til at loope, og skulle gerne bevare subdomain.domain.dk i titlen idet at den skriver internt i stedet for at redirecte

Mvh
Martin
Avatar billede webt Nybegynder
26. februar 2006 - 13:57 #12
Hov
RewriteCond %{REQUEST_FILENAME} !^/din/absolutte/sti/til/wwww/%1

skal nok lige være

RewriteCond %{REQUEST_FILENAME} !^/din/absolutte/sti/til/wwww

:)
Mig der kludrer
Avatar billede dennism Nybegynder
26. februar 2006 - 15:11 #13
Jeg har nu følgende:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^([^.]+)\.myhp\.dk$
RewriteCond %{1} !^www$
RewriteCond c:/www/myhp.dk/www/%1 -d
RewriteCond %{REQUEST_FILENAME} !^c:/www/myhp.dk/www/
RewriteRule (.*) c:/www/myhp.dk/www/%1/$1 [l]

Den loop'er ikke mere, men ny dur subdomænerne ikke længere :(

Se f.eks. her:
http://ns-ekstra.myhp.dk/

Det giver en fejl :(

Jeg har smidt nogle flere point i dette spørgsmål!
Avatar billede webt Nybegynder
26. februar 2006 - 19:16 #14
Hmm, måske fordi det er windows? ved det ikke
prøv evt..

RewriteEngine On
RewriteCond %{HTTP_HOST} ^([^.]+)\.myhp\.dk$
RewriteCond %{1} !^www$
RewriteCond %1 -d
RewriteCond %{REQUEST_FILENAME} !^/
RewriteRule (.*) %1/$1 [l]

Se om det virker... har aldrig prøvet at sætte det op på windows, men ovenstående virker som sagt på linux.. ellers kan du ikke bare lave en dynamisk virtual host til at klare opgaven?

http://httpd.apache.org/docs/2.0/vhosts/mass.html

Mvh
Martin
Avatar billede webt Nybegynder
26. februar 2006 - 19:17 #15
der bruges dog også mod rewrite der, men det kan være de officielle eksempler virker bedre...
Avatar billede dennism Nybegynder
26. februar 2006 - 20:31 #16
Den har jeg nu:
tp://ns-ekstra.myhp.dk/

Men det virker desværre ikke :(

Jeg har ikke interesseret I at skulle lave et virtual host til samtlige brugere på myhp.dk, derfor ville det være dejligt hvis én .htaccess fil kunne klar arbejdet.

Kan du evt. hjælpe udfra nogle af de officielle eksempler (forstår dem ikke selv)?
Avatar billede dennism Nybegynder
28. februar 2006 - 11:20 #17
Jeg har netop afsat flere point.. Håber du har tid til at hjælpe mig hurtigst muligt?
Avatar billede webt Nybegynder
28. februar 2006 - 21:03 #18
Pointniveau var nu helt fint, handler mere om tid end point her samt evne
Har ikke meget styr på det med vhosts havde en gang (apache 1.3) og fik da sat noget ala det du ønsker op med en enkelt vhost så det er muligt, men kan selvfølgelig ikke finde nogle af de cd'er med backup fra dengang... men:

RewriteEngine on
RewriteMap lowercase int:tolower
# check the hostname is right so that the RewriteRule works
RewriteCond ${lowercase:%{SERVER_NAME}} ^www\.[a-z-]+\.isp\.com$
# concatenate the virtual host name onto the start of the URI
# the [C] means do the next rewrite on the result of this one
RewriteRule ^(.+) ${lowercase:%{SERVER_NAME}}$1 [C]
# now create the real file name
RewriteRule ^www\.([a-z-]+)\.isp\.com/(.*) /home/$1/$2

fra apache doc. er jo stort set det samme som mine to forslag og angiver også den fulde sti til filerne, så vil tro det giver samme problem som igen med fejlbeskeden om man ikke har adgang til det..... det må absolut være noget windows halløj eller et eller andet vi begge har overset... hvis jeg havde tiden ville jeg gerne indstallerer apache på windows og prøve mig frem, men det har jeg ikke lige pt...

lad os håbe en anden ekspert har styr på apache og windows
Mvh
Martin
Avatar billede dennism Nybegynder
01. marts 2006 - 07:28 #19
Smider du ik lige et svar? Så kan vi dele point?
Avatar billede webt Nybegynder
01. marts 2006 - 19:49 #20
Jo men her kommer et svar, ked af jeg ikke kunne hjælpe mere... men holder øje med din nye post fordi jeg forstår ikke hvorfor det ikke virker så ville være rart med en løsning

Fortsat god aften
martin
Avatar billede dennism Nybegynder
01. marts 2006 - 20:42 #21
Tak for forsøget :)
Avatar billede dennism Nybegynder
01. marts 2006 - 20:42 #22
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