Domanda

Sono interessato a, se posso avere vhosts su Apache con nomi di dominio come: http://something.com/something o http:// {server-indirizzo IP-indirizzo-qui} / qualcosa ?

Sto usando Apache 2.2.20 su Ubuntu Server, questo è il mio server home e sto testando alcune cose qui, non ho alcun server DNS qui e ciò che ho è solo un indirizzo IP pubblico e un nome di dominio è stato collegato Apri il servizio DNS.

Allora, cosa ho fatto:

    .
  1. Ho creato nuovo file "demo" in / etc / apache2 / siti-disponibile
  2. Metto lì questo (in realtà viene copiato con modifiche dal file predefinito):

    <VirtualHost *:80>
       ServerAdmin webmaster@localhost
       ServerName  {mydomain-here}/demo/
       DocumentRoot /vhosts/demo
    <Directory />
            Options FollowSymLinks
            AllowOverride None
    </Directory>
    <Directory /vhosts/demo/>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride None
            Order allow,deny
            allow from all
    </Directory>
    
    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
            AllowOverride None
            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
            Order allow,deny
            Allow from all
    </Directory>
    
    ErrorLog ${APACHE_LOG_DIR}/error.log
    
    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn
    
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    
    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>
    </VirtualHost>
    

  3. Creato Symlink In / Etc / Apache2 / Siti-Abilitato / quali punti da / etc / apache2 / Siti-disponibili / demo

  4. creato /vhosts/demo/index.html file.

    E ora quello che ottengo è che quando vado a {my-Domain} Io vado a vhost che ho creato, ma il problema è che il server mi indica lì in ogni caso, non solo {My-Domain} / demo cosa Voglio.

    In conclusione, voglio che posso creare diversi host virtuali e collegarli a diversi URL che avranno lo stesso URL di base, ad esempio www.mydomain.com/vhost1, www.mydomain.com/vhost2 ecc. < / P >.

    è possibile? Grazie :)

È stato utile?

Soluzione

To start, the reason why it goes there is ANY case is cause you have you have a *:80 setting for your virtual host, so if nothing matches the request it uses the first virtual host entry

If I understand what you are trying to do it appears like you might just want to alias each 'virtual host'

What you are trying to do isn't quite a virtual host (at least what a virtual host is supposed to do), but you might be able to accomplish it by using alias feature of apache

Alias /vhost1 /whatever/folder/your/vhost1/site/is/at
Alias /vhost2 /whatever/folder/your/vhost2/site/is/at

So now whatever domain you use e.g. http://whatever.com/vhost1 or http://whatever.com/vhost2 The both of em will appear as separate sites

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top