[Apache2.0] mod_vhost_alias en een . in path

Pagina: 1
Acties:

  • pierre-oord
  • Registratie: April 2002
  • Laatst online: 12:27
Als eerste: misschien moet dit naar NT, weer zo'n twijfel geval.

Het zit zo:
Ik heb een stel domeinen die ik gemakkelijk wil hosten met gebruik van mod_vhost_alias. Mod etc werkt, op 1 ding na, een punt in het path. Ik wil de volgende opbouw:

/www/domein.extensie/sub.sub.sub

Daarvoor gebruik ik:
code:
1
2
3
4
5
6
7
<VirtualHost *:80>
    ServerAdmin blaat@blaat.com
    ServerName www.blaat.com

    VirtualDocumentRoot /www/%-2%-1/%-3+/docs
    VirtualScriptAlias doet er nog niet toe
</VirtualHost>


(even zonder m'n directory etc, kaal zo).

Dit geeft dan deze output, als ik naar hallo.iets.nl zou gaan:
/www/hallonl/iets

Ah, er moet een . komen tussen hallo. Ok, geen probleem, behalve dat apache ook punten gebruikt om per letter te kunnen selecteren aan iets tussen de 2 punten.

Eerst dit dan:
code:
1
2
3
4
5
6
7
<VirtualHost *:80>
    ServerAdmin blaat@blaat.com
    ServerName www.blaat.com

    VirtualDocumentRoot /www/%-2.%-1/%-3+/docs
    VirtualScriptAlias doet er nog niet toe
</VirtualHost>


Ai, dat vind de apache config checker niet leuk. Ok, ik had gezien dat %% wel werkt om een % ertussen te proppen, misschien werkt het als een \ bij php?

Dus:
code:
1
2
3
4
5
6
7
<VirtualHost *:80>
    ServerAdmin blaat@blaat.com
    ServerName www.blaat.com

    VirtualDocumentRoot /www/%-2%.%-1/%-3+/docs
    VirtualScriptAlias doet er nog niet toe
</VirtualHost>


Dat geeft weer een error...

Nog even op de php manier gedaan dan:
code:
1
2
3
4
5
6
7
<VirtualHost *:80>
    ServerAdmin blaat@blaat.com
    ServerName www.blaat.com

    VirtualDocumentRoot /www/%-2\.%-1/%-3+/docs
    VirtualScriptAlias doet er nog niet toe
</VirtualHost>


mm, dat path bestaat niet....


Dus: Hoe krijg ik het aan de praat daar een punt tussen te stoppen? Anders moet ik met streepjes enzo gaan werken, dat maakt het alleen maar lastiger.

Hier nog een iets helderder stukje over het gebruik van mod_vhost_alias bij apache: http://www.apachefreaks.com/apache/mod/mod_vhost_alias.html
En hier de officiele howto: http://httpd.apache.org/docs-2.0/vhosts/mass.html

Deze Apache 2.0.49 draait onder Debian Linux 3.0, kernel 2.6.5 , gecompileerd met PHP, Mysql en SSH, met natuurlijk de mod_vhost_alias module, die ook geladen is anders deed het helemaal niets.

Ergens voel ik aankomen dat dit niet gaat lukken, maar ja, wie niet vraagt, wie niet wint... ;)

Ondernemer in tech (oud LOQED.com, nu UpToMore.com)


  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Ehm, je kunt natuurlijk ook de URLS lezen die je post. Uit die eerste:
If you want to include the . character in a VirtualDocumentRoot directive, but it clashes with a % directive, you can work around the problem in the following way:

VirtualDocumentRoot /usr/local/apache/vhosts/%2.0.%3.0

A request for http://www.example.isp.com/directory/file.html will be satisfied by the file /usr/local/apache/vhosts/example.isp/directory/file.html.

All my posts are provided as-is. They come with NO WARRANTY at all.


  • FailFr8er
  • Registratie: Juli 2001
  • Laatst online: 19-02 19:56
code:
1
2
3
<VirtualHost *>
     VirtualDocumentRoot "/usr/local/home/%-2.0.%-1.0/web/%0"
</VirtualHost>


Dit is de mijne, het enige dat ik dan hoef te doen om nog een domeintje erbij te plukken is gewoon een user aanmaken, met zn homedir in /usr/local/home/<domain.tld>

Daarna hoeft hij alleen z'n subdomains aan te geven (dmv directories) in /usr/local/home/domain.tld/web/<subdomain.domain.tld>

Werkt prima hier :)

  • pierre-oord
  • Registratie: April 2002
  • Laatst online: 12:27
Ben ik nu zo blind? Sorry, ik dacht dat ik echt alles gelezen had!

Ondernemer in tech (oud LOQED.com, nu UpToMore.com)