• User Attivo

    Sottodomini con Apache2

    Salve a tutti...
    Sto provando a configurare apache2 per gestire un paio di sottodomini...
    Non riesco pero' a cavarci le gambe: mettiamo che io abbia un sito, sito.com, con la home in /var/www.
    Io dovrei creare un sottodominio del tipo sotto.sito.com che punti a /var/www/sotto.
    Qualcuno sa dirmi come si fa (o postarmi qualche link)?
    Grazie in anticipo...


  • Super User

    Nel mio serverino casalingo ho qualcosa del genere:

    NameVirtualHost 192.168.0.3
    
    <VirtualHost 192.168.0.3>
        ServerAdmin [email protected]
        DocumentRoot /var/www
        <Directory /var/www>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride FileInfo
            Order allow,deny
            allow from all
        </Directory>
    
        ServerName www.dom.ext
        ServerAlias www.dom.ext:*
        ErrorLog logs/dom_err
        CustomLog logs/dom common
    </VirtualHost>
    
    <VirtualHost 192.168.0.3>
        ServerAdmin [email protected]
        DocumentRoot /var/www/sotto
        <Directory /var/www/sotto>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride FileInfo
            Order allow,deny
            allow from all
        </Directory>
    
        ServerName sotto.dom.ext
        ServerAlias sotto.dom.ext:*
        ErrorLog logs/sotto_err
        CustomLog logs/sotto common
    </VirtualHost>
    

    Prova e facci sapere 😉

    ADD: (magari l'hai già letta ma...) qui parte una buona documentazione http://httpd.apache.org/docs/2.2/vhosts/


  • Super User

    KING_Hack, come mai fai un bind sull'ip locale? °_°
    il tuo è un server interno alla lan? o ti funziona anche all'esterno?


  • Super User

    @osvi said:

    KING_Hack, come mai fai un bind sull'ip locale? °_°
    il tuo è un server interno alla lan? o ti funziona anche all'esterno?

    Tutte e 2 quelle che hai scritto 😄

    Ho installato un DNS server poi perchè all' interno della lan se no al digitare di www.miodominio_interno_alla.lan mi sputava fuori la finestra di login del routerozzo 😉


  • Super User

    ah capisco
    un alternativa poteva anche essere il file hosts

    ciao! 😄


  • Super User

    Si osvi, nn ci sono dubbi, ma visto che come "serverino casalingo" sto gestendo una cosa tipo 4/5 domini con relativi (abbastanza se non molti) sottodomini tutti per allenarmi, smanettare e divertirmi su una slack allora ho voluto anche implementare il serverozzo DNS per far le cose ... profescionals 😉


  • User Attivo

    Ho messo dentro /etc/apache2/sites-enabled/000-default queste righe, esattamente con questi ritorni a capo:

    NameVirtualHost *

    <VirtualHost *>
    ServerAdmin [email][email protected][/email]
    DocumentRoot /var/www
    <Directory /var/www>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride FileInfo
    Order allow,deny
    allow from all
    </Directory>

    ServerName www.dominio.ext
    ServerAlias www.dominio.ext:*
    ErrorLog logs/salatti_err
    CustomLog logs/salatti common
    </VirtualHost>

    <VirtualHost *>
    ServerAdmin [email][email protected][/email]
    DocumentRoot /var/www/ase
    <Directory /var/www/ase>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride FileInfo
    Order allow,deny
    allow from all
    </Directory>

    ServerName ase.dominio.ext
    ServerAlias ase.dominio.ext:*
    ErrorLog logs/ase_err
    CustomLog logs/ase common
    </VirtualHost>

    Ho messo prima l'IP, poi l'asterisco, /var/www e' la home, il sottodominio dovrebbe puntare a /var/www/ase che esiste. Il problema e' che apache2 non si avvia. Ho controllato la doc che mi ha passato KING al link sopra, ma non sono riuscito a cavarne niente... Il dominio usa i DNS giusti...

    Per quanto riguarda apache che non parte hai provato a vedere nei log?
    Che ti dice? E' la prima cosa da verificare per risalire al problema.

    Sai che non trovo i log!?!?

    Pasta la riga della direttiva sul http.conf che dice di andare a vedere in questa path /etc/apache2/sites-enabled/ ; probabile che 000-default sia per il VHost di default e IMHO dovresti creare singoli file per ogni VH che aggiungi alla configurazione.

    httpd.conf? c'e' solo questo:

    This is here for backwards compatability reasons and to support

    installing 3rd party modules directly via apxs2, rather than

    through the /etc/apache2/mods-{available,enabled} mechanism.

    #LoadModule mod_placeholder /usr/lib/apache2/modules/mod_placeholder.so
    LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so

    Aiutttoooo!!!


  • User Attivo

    I log gli ho trovati, ma non mi sembra ci sia nulla di strano...se volete li posto ma sono lunghissimi e pieni di 404...


  • User Attivo

    Scusate se continuo a scrivere, ma "ssh [email][email protected][/email]" mi da:
    ssh: dominio.ext: Temporary failure in name resolution

    E' dovuto a apache che non si avvia??


  • Super User

    @Salatti.NET said:

    1. Ho messo prima l'IP, poi l'asterisco,

    2. Sai che non trovo i log!?!?

    3. httpd.conf? c'e' solo questo:

    This is here for backwards compatability reasons and to support

    installing 3rd party modules directly via apxs2, rather than

    through the /etc/apache2/mods-{available,enabled} mechanism.

    #LoadModule mod_placeholder /usr/lib/apache2/modules/mod_placeholder.so
    LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so

    1. Aiutttoooo!!!
    1. l'asterisco solo qui sul post per prob di privacy o anche nella conf originale?

    2. /var/log/apache/ /var/log/httpd/ /usr/local/apache/logs/ (path standard... l'ho buttata li... moooolto a grandi linee... sorry)
      Prova cmq a far cosi (SE hai anche un apache.conf) da shell:

    # cat apache.conf |grep log
    

    Dovrebbe darti una serie di linee tra cui magari qualcosa del genere:

    ErrorLog /var/log/apache2/error.log
    
    1. hai provato a vedere col comando che ti dice qui?
      # installing 3rd party modules directly via apxs2,

    2. Non gridare Aiutttoooo!!! ...non ti servirà a configurare in automatico i file per la conf di apache :lol:


  • Super User

    posta la parte che ci interessa del log..
    oppure svuotali e riavvia apache e postali
    non usare graceful, dai proprio un restart completo

    ps.
    la configurazione di apache2 secondo me è stata migliorata e molto
    perchè usare httpd.conf e mettere tutti i siti in "default"? 🙂
    http://guide.debianizzati.org/index.php/LAMP:_Linux,_Apache,_MySQL_e_PHP

    @KING_Hack said:

    1. Non gridare Aiutttoooo!!! ...non ti servirà a configurare in automatico i file per la conf di apache :lol:

    :lol::lol::lol::lol:


  • Super User

    @Salatti.NET said:

    Scusate se continuo a scrivere, ma "ssh [email][email protected][/email]" mi da:
    ssh: dominio.ext: Temporary failure in name resolution

    E' dovuto a apache che non si avvia??

    Io per la verità non ho problemi ad ssaccare il TUO dominio.ext
    Problema temporaneo di dns o di firewall... nn saprei.


  • User Attivo

    @KING_Hack said:

    Io per la verità non ho problemi ad ssaccare il TUO dominio.ext
    Problema temporaneo di dns o di firewall... nn saprei.

    Ok...rete dell'uni che perde i colpi... Mi stava venendo una crisi di panico...

    @KING_Hack said:

    1. l'asterisco solo qui sul post per prob di privacy o anche nella conf originale?
    1. /var/log/apache/ /var/log/httpd/ /usr/local/apache/logs/ (path standard... l'ho buttata li... moooolto a grandi linee... sorry)
      Prova cmq a far cosi (SE hai anche un apache.conf) da shell:
    ># cat apache.conf |grep log
    >```
    Dovrebbe darti una serie di linee tra cui magari qualcosa del genere:
    

    ErrorLog /var/log/apache2/error.log

    1. hai provato a vedere col comando che ti dice qui?
      # installing 3rd party modules directly via apxs2,

    2. Non gridare Aiutttoooo!!! ...non ti servirà a configurare in automatico i file per la conf di apache :lol:

    3. L'asterisco anche nella configurazione originale...ho provato prima con l'ip, poi con l'asterisco. Se puo' aiutare ci sono due server DNS funzionanti...asterisco o IP??

    1 + osvi. Trovati, svuotati, fatto ripartire apache2:

    Unable to open logs

    Problema di permessi?? I file esistono, creati a mano dal sottoscritto (prima mi diceva che non esistevano)...

    1. ???

    2. ok... 🙂


  • User Attivo

    Ok, ho tolto le righe relative ai log nel file, e ora parte tranquillamente...devo trovare un altro posto dove mettreli? Erano in /var/log/apache2/logs (directory creata da me)... Mi sa che li non vanno bene...
    Adesso pero' anche se parte il sottodominio ase.dominio.ext non e' raggiungibile da browser......


  • Super User

    Erano in /var/log/apache2/logs (directory creata da me)... Mi sa che li non vanno bene...

    Perchè? Se loggava potevi lasciarli li tranquillamente.

    Adesso pero' anche se parte il sottodominio ase.dominio.ext non e' raggiungibile da browser......

    Perchè sicuramente cè qualce direttiva sbagliata sul conf di apache.
    Prova a sostituire * con IP [server|pubblico]

    ...e poi rivedi i log che ti dicono.

    NOTA: sottovaluta TUTTO ma NON i LOG 😉


  • User Attivo

    @KING_Hack said:

    Perchè? Se loggava potevi lasciarli li tranquillamente.

    Loggava sul log degli errori (error.log) in /var/log/apache2, non in quelli specifici dei domini/sottodomini in /var/log/apache2/logs

    Purtroppo adesso devo staccare... Stasera faccio la prova dell'IP e cerco di farfunzionare tutti i log!!


  • Super User

    si problemi di permessi
    consiglio (cosa scoperta due giorni fa): per svuotare un file non lo cancellare e ricreare con touch
    dai echo > filedasvuotare (come root)
    ti manterrà i permessi del file (cmq su apache i log di apache sono di root:adm se ti può servire)


  • User Attivo

    @osvi said:

    si problemi di permessi
    consiglio (cosa scoperta due giorni fa): per svuotare un file non lo cancellare e ricreare con touch
    dai echo > filedasvuotare (come root)
    ti manterrà i permessi del file (cmq su apache i log di apache sono di root:adm se ti può servire)

    Grazie, fino ad ora lo facevo a mano (con jed)...
    Ho provato a mettere l'IP invece dell'asterisco, ma il sottodominio ancora non viene visto...

    Adesso provo a rimettere i log...


  • User Attivo

    Log rimessi...adesso apache2 parte tranquillamente, quindi il problema dei log sembra superato.
    Ma non ci sono errori particolari...solo i 404 delle pagine non trovate...
    Voi cosa vedete andando su http://ase.salatti.net


  • Super User

    @Salatti.NET said:

    Log rimessi...adesso apache2 parte tranquillamente, quindi il problema dei log sembra superato.
    Ma non ci sono errori particolari...solo i 404 delle pagine non trovate...
    Voi cosa vedete andando su http://ase.salatti.net

    Io vedo la classica pag di FF:

    Indirizzo non trovato
    Firefox non riesce a contattare il server ase.salatti.net.

    I log non ti servono solo per vedere i 404 ma per capire se, nel momento dell' avvio del daemon di apache, la stringa che passa ovvero se da un errore e su cosa.

    PS: non è che devi riconfigurare/implementare una qualche direttiva sui server DNS interni che hai in funzione? Magari Apache non ti da errore ma devi far sapere al mondo che ase.salatti.net punta a quell' IP e verrà reindirizzato al server apache (a sua volta farà il reindirizzamento alla dir che gli hai indicato sui Vhost).