Avatar billede hyperman Nybegynder
14. januar 2003 - 22:20 Der er 34 kommentarer

Apache Virtual Host

Hej

Jeg har problemer med min Apache konfiguration, da jeg gerne vil have den til at virke med virtual hosts.

Jeg kører linux debian.

Min Virtual host linier:

NameVirtualHost *

<VirtualHost *>
        ServerName www.test.piraten.dk
        ServerAlias test.piraten.dk
        DocumentRoot /home/www
</VirtualHost>



Men er der noget med at jeg også skal ændre i en anden fil ? Jeg kan nemlig ikke få det til at virke....

Er der en måde som jeg kan bruge så jeg kan checke hjemmefra om det virker ?


Sig hvis i vil have mere kode....

Mvh

Nichlas
Avatar billede jinxit Nybegynder
14. januar 2003 - 22:30 #1
Hvilken fejl får du? se errorlog...
Avatar billede htm Nybegynder
14. januar 2003 - 22:31 #2
Har du læst om vhost her? http://www.sukos.dk/apache/apache_vhosts.shtml

Det er godt beskrvet der til hvordan du skal gøre!

Prøv og byt om på servername og scriptalias så det kommer til at se sådan ud:

<VirtualHost *>
        ServerName test.piraten.dk
        ServerAlias www.test.piraten.dk
        DocumentRoot /home/www
</VirtualHost>

Derudover vil jeg anbefale dig at have et vhost der hedder piraten.dk !

Hvis ikke det hjælper må vi lige se din errorlog!
Avatar billede hyperman Nybegynder
14. januar 2003 - 22:41 #3
Når jeg laver et vhost der hedder piraten.dk

<VirtualHost *>
    ServerName piraten.dk
    ServerAlias www.piraten.dk
    DocumentRoot /var/www
</VirtualHost>

Skal jeg så slette de tidligere eksempler i konfigurationsfilen, hvor jeg også har sat document root til /var/www?
Avatar billede thj_ether Nybegynder
14. januar 2003 - 22:42 #4
Hej hyperman.
Du skal indsætte følgende i din /etc/hosts :
192.168.1.1    domain.dk
192.168.1.1    *.domain.dk

Og det her skal der stå i din Apache httpd.conf:
<VirtualHost *>
DocumentRoot /var/www/hjemmeside
ServerName hjemmeside.domain.dk
ServerAlias www.hjemmeside.com
</VirtualHost>

Og hvis du vil have logs for hvert vhost i hvert sin log fil, indsæt flg i virtualhost:
TransferLog /home/user/logs/access.log
ErrorLog /home/user/logs/error.log

Husk at restarte apache.
Håber du kan bruge det. Det virker for mig.
Mvh Tommy Holm Jacobsen
Avatar billede hyperman Nybegynder
14. januar 2003 - 22:43 #5
Forresten, nu ser min konfiguration sådan her ud:

NameVirtualHost *

#include vhosts.conf

<VirtualHost *>
        ServerName piraten.dk
        DocumentRoot /var/www
        ServerAlias www.piraten.dk
        ServerAdmin bla@bla.dk
</VirtualHost>

<VirtualHost *>
        ServerName test.piraten.dk
        ServerAlias www.test.piraten.dk
        DocumentRoot /home/www
        ServerAdmin bla@bla.dk
</VirtualHost>
Avatar billede caspers Nybegynder
14. januar 2003 - 22:46 #6
Husk IP nummeret eks:

NameVirtualHost 192.168.1.21

<VirtualHost 192.168.1.21>
ServerAdmin webmaster@unispeed.dk
DocumentRoot /usr/local/apache/htdocs
ServerName www.unispeed.dk
ErrorLog logs/host.unispeed-error_log
TransferLog logs/host.unispeed-access_log
</VirtualHost>
Avatar billede thj_ether Nybegynder
14. januar 2003 - 22:47 #7
Hvorfor er det lige du har:
#include vhosts.conf
i din conf?
og når du sætter # ud foran noget, kommenterer du det, altså apache serveren læser ikke det der står der. Hvis du skal include en fil, skal du bare skrive:
include fil.blah

Og din rækkefølge er også forkert, se på mit tidligere indlæg.
Avatar billede josini Nybegynder
14. januar 2003 - 22:47 #8
Jeg tror ikke det gør nogen forskel, at rækkefølgen er forskellig, men på XP (og andre windows-maskiner) skal Apache lige vendes før det virker.

Hvad mener du med at checke hjemmefra om det virker?
Avatar billede hyperman Nybegynder
14. januar 2003 - 22:48 #9
thj_ether: Skal jeg bruge IP'en som 192.168.1.1, det er min ip til routeren. Ip'en på maskinen er 192.168.1.3...
Avatar billede hyperman Nybegynder
14. januar 2003 - 22:49 #10
thj_ether: Det var bare noget der ikke skulle bruges, jeg har jo eksperimenteret meget med Apache for at få det til at virke...
Avatar billede thj_ether Nybegynder
14. januar 2003 - 22:50 #11
hyperman, bare brug din ip ud til så.
Avatar billede hyperman Nybegynder
14. januar 2003 - 22:51 #12
Josini: Jeg vil checke det hjemmefra, så jeg ikke skal bede en anden om at gå ind på siden hver gang jeg vil teste min konfiguration. Jeg har jo domain herhjemme, så jeg kan ikke skrive www.piraten.dk i min browser...
Avatar billede jinxit Nybegynder
14. januar 2003 - 22:52 #13
Man skal kun anvende IP adresser, hvis der er 1 site pr. netkort i maskinen. Ved at anvende * kan man mappe mange sites over kun 1 netkort.
Avatar billede thj_ether Nybegynder
14. januar 2003 - 22:52 #14
Well hyperman, hvis bare du gør det som jeg skrev i mit første svar, så skulle det virke. Det er i hvertfald det jeg har gjort, og også det jeg har sat op ved en del andre.
Jeg bliver nød til at smutte, skal tidligt op i morgen.
Avatar billede josini Nybegynder
14. januar 2003 - 22:53 #15
Du kunne jo prøve det gennem www.anonymizer.com
Avatar billede hyperman Nybegynder
14. januar 2003 - 22:54 #16
caspers: Hvad er forskellen egentlig, fordi jeg har set mange eksempler og jeg kan ikke helt se hvad forskellen er. Nogle de bruger *, mens andre bruger IP(både intern og ekstern). Er det ikke ligemeget om jeg skriver ip eller * ?
Avatar billede hyperman Nybegynder
14. januar 2003 - 22:55 #17
thj_ether: Skal jeg genloade min /etc/hosts fil ?

Siden er oppe nu, så i kan lige prøve om det virker....
Avatar billede thj_ether Nybegynder
14. januar 2003 - 22:57 #18
er lige en lille rettelse:

Du skal indsætte følgende i din /etc/hosts :
192.168.1.1    domain.dk
192.168.1.1    *.domain.dk

Og det her skal der stå i din Apache httpd.conf:
NameVirtualHost *
<VirtualHost *>
DocumentRoot /var/www/hjemmeside
ServerName hjemmeside.domain.dk
ServerAlias www.hjemmeside.com
</VirtualHost>

Og det er det eneste, DET VIRKER.
Avatar billede thj_ether Nybegynder
14. januar 2003 - 22:58 #19
Nej, du skal ikke genloade din hosts fil.
Avatar billede hyperman Nybegynder
14. januar 2003 - 22:58 #20
Du svarer jo ikke....

thj_ether: Skal jeg genloade min /etc/hosts fil ?
Avatar billede hyperman Nybegynder
14. januar 2003 - 22:59 #21
ok
Avatar billede thj_ether Nybegynder
14. januar 2003 - 23:00 #22
jeg svarer da?
Avatar billede hyperman Nybegynder
14. januar 2003 - 23:00 #23
httpd.conf:

NameVirtualHost *

<VirtualHost *>
        ServerName piraten.dk
        DocumentRoot /var/www
        ServerAlias www.piraten.dk
</VirtualHost>

<VirtualHost *>
        ServerName test.piraten.dk
        ServerAlias www.test.piraten.dk
        DocumentRoot /home/www
</VirtualHost>


/etc/hosts:

127.0.0.1      localhost
192.168.1.2    debian
192.168.1.3    piraten.dk
192.168.1.3    *.piraten.dk


Ser det ikke fint ud ? Det ser ikke ud til at virke....
Avatar billede thj_ether Nybegynder
14. januar 2003 - 23:04 #24
<VirtualHost *>
        DocumentRoot /var/www/
        ServerName piraten.dk
        ServerAlias www.piraten.dk
</VirtualHost>
<VirtualHost *>
        ServerName test.piraten.dk
        ServerAlias www.test.piraten.dk
        DocumentRoot /home/www/
</VirtualHost>

Tror måske at i din hosts fil, skal det være den ip, hvor webserveren kører på, der skal stå der.
Avatar billede hyperman Nybegynder
14. januar 2003 - 23:10 #25
så min hosts fil skal ændres til:

127.0.0.1  localhost
192.168.1.2 debian
195.215.203.26  piraten.dk
195.215.203.26  *.piraten.dk


på den måde ?

Serveren kører internt på ip 192.168.1.3.
Avatar billede caspers Nybegynder
14. januar 2003 - 23:14 #26
hyperman: * kontra ip nummer
Hvis du har flere IPnumre på en bestemt maskine, kan du bestemme fra hvilket IP nummer Apache skal svare.
Hvis man gerne vil se eget site på eks: 192.168.1.3 der hedder www.piraten.dk, kan man jo i sin hosts fil skrive:
192.168.1.3 www.piraten.dk
C:\WINNT\system32\drivers\etc\hosts under windows xxxx
Avatar billede hyperman Nybegynder
14. januar 2003 - 23:25 #27
Jeg har lige testet min hosts fil via Anonymizer.com og jeg prøvede bare for testens skyld at ændre linien:

192.168.1.3  piraten.dk

til

1.1.1.1    piraten.dk

og siden blev stadig vist, så den har nok ikke genlæst /etc/hosts
Avatar billede hyperman Nybegynder
15. januar 2003 - 17:09 #28
Her kommer lige noget fra min configurationsfil, hvis det kan bruges til noget:


[Wed Jan 15 16:28:06 2003] [error] [client 63.197.11.74] File does not exist: /$var/ww


Jeg synes ikke selv at jeg kunne bruge det til noget.....
Avatar billede hyperman Nybegynder
15. januar 2003 - 17:19 #29
Undskyld, fejlen ser sådan her ud:
[Wed Jan 15 16:28:06 2003] [error] [client 63.197.11.74] File does not exist: /$var/www/ww
Avatar billede sukos Juniormester
15. januar 2003 - 17:41 #30
hmm, jeg ville bruge
DocumentRoot /var/www
uden afsluttende skråstreg.
Ved ikke om det betyder noget?

Men hvad er det for $var?
Den har du da ikke defineret?
Avatar billede thj_ether Nybegynder
15. januar 2003 - 18:06 #31
Tror du har fucket et eller andet helt op, prøv at slette apache, mysql, og hvad nu du har installeret, som der arbejder sammen med apache httpd serveren, og følg så denne guide:http://debianguiden.dk/dists/stable/html/opsaetning-webserver.html
Avatar billede hyperman Nybegynder
15. januar 2003 - 18:36 #32
Jeg fulgte noget af guiden, og læste den lidt bedre end jeg havde gjordt tidligere. Jeg fik ændret lidt i konfigurationen.

Jeg får nu denne alert i min error.log:

[Wed Jan 15 18:24:00 2003] [alert] mod_unique_id: unable to gethostbyname("debian")

Hvad sker der med den fejl ?

httpd.conf:


NameVirtualHost 192.168.1.3:80

<VirtualHost 192.168.1.3:80>
        DocumentRoot /var/www/
        ServerName piraten.dk
        ServerAlias www.piraten.dk
</VirtualHost>

<VirtualHost 192.168.1.3:80>
        DocumentRoot /home/www/
        ServerName test.piraten.dk
        ServerAlias www.test.piraten.dk
</VirtualHost>


Jeg har prøvet med <VirtualHost *> og <VirtualHost 192.168.1.3:80> men det giver samme resultat....
Avatar billede hyperman Nybegynder
16. januar 2003 - 22:19 #33
Nu prøver jeg imorgen at installere Debian igen, fordi den var blevet fucked helt op. Jeg prøver så som det første at følge guiden fra www.debianguiden.dk og håber så på at det fungerer...
Avatar billede hyperman Nybegynder
19. januar 2003 - 11:07 #34
Jeg har geninstalleret Debian og fulgt installationsproceduren fra www.debianguiden.dk og det ser ud til "lidt" at virke.

Hvis man går ind på siden http://195.215.203.26/ vil den vise en side hvorpå der står "Hello".
Hvis man derimod går ind på www.piraten.dk vil den vise "Welcome to your new Home in Cyberspace".

Det må vel være et tegn på at det virker, men dog ikke helt endnu fordi sub-domains virker stadig ikke... Kan det være noget med der hvor jeg har købt mit hostname, f.eks. at de ikke understøtter det ?

httpd.conf:

NameVirtualHost 192.168.1.3:80

<VirtualHost 192.168.1.3:80>
DocumentRoot /home/hyperman/www/
ServerName 195.215.203.26
</VirtualHost>

<VirtualHost 192.168.1.3:80>
DocumentRoot /var/www/
ServerName piraten.dk
ServerAlias www.piraten.dk
</VirtualHost>

<VirtualHost 192.168.1.3:80>
DocumentRoot /var/www/
ServerName test.piraten.dk
ServerAlias www.test.piraten.dk
</VirtualHost>

/etc/hosts:

127.0.0.1      localhost
192.168.1.3    piraten.dk      piraten
192.168.1.3    *.piraten.dk    piraten
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