Apache e Virtual Hosts: configurare Apache2 per ospitare più siti web: differenze tra le versioni

Vai alla navigazione Vai alla ricerca
m (+ template autori e versioni compatibili)
 
(12 versioni intermedie di 4 utenti non mostrate)
Riga 1: Riga 1:
{{Versioni compatibili}}
{{Versioni compatibili|Squeeze|Wheezy|Jessie|Stretch}}
 
 
 
== Introduzione ==
== Introduzione ==
Uno dei casi più frequenti in cui ci si può imbattere nella configurazione di un web server Apache è il problema di dover ospitare più di un sito web sullo stesso server, avente un solo indirizzo IP pubblico.
Uno dei casi più frequenti in cui ci si può imbattere nella configurazione di un web server Apache è il problema di dover ospitare più di un sito web sullo stesso server, avente un solo indirizzo IP pubblico.
Riga 9: Riga 12:
== Prerequisiti ==
== Prerequisiti ==
* I record DNS dei due domini www.esempio.it e www.esempio.org devono essere configurati per puntare all'indirizzo IP pubblico del nostro server Apache, nel nostro caso 192.168.1.1
* I record DNS dei due domini www.esempio.it e www.esempio.org devono essere configurati per puntare all'indirizzo IP pubblico del nostro server Apache, nel nostro caso 192.168.1.1
* Sul server in questione deve essere installato e funzionante un server Apache. Si segua ad esempio questa guida: [[Installare un ambiente LAMP: Linux, Apache2, SSL, MySQL, PHP5]]
* Sul server in questione deve essere installato e funzionante un server Apache. Si segua ad esempio una di queste guide: [[Installare un ambiente LAMP: Linux, Apache2, SSL, MySQL, PHP5]] oppure [[Installare un ambiente LAMP: Linux, Apache2, SSL, MySQL, PHP5 - Stretch]]
<br/>
{{Warningbox|La guida è compatibile anche con Debian Stretch, basta tener presente che la directory web root di Apache è diventata <tt>/var/www/html</tt>. Questo valore va quindi sostituito, nel resto della guida, al valore presentato: <tt>/var/www</tt>.}}


== Configurazione dei Virtual Hosts ==
== Configurazione dei Virtual Hosts ==
Riga 38: Riga 43:
# www.esempio.it
# www.esempio.it
#
#
<VirtualHost *:80>
<VirtualHost *:80>
         ServerAdmin webmaster@esempio.it
         ServerAdmin webmaster@esempio.it
         ServerName  www.esempio.it
         ServerName  www.esempio.it
         ServerAlias esempio.it
         ServerAlias esempio.it


         # Indexes + Directory Root.
         # Indexes + Directory Root.
         DirectoryIndex index.html index.htm index.php
         DirectoryIndex index.html index.htm index.php
         DocumentRoot /var/www/www.esempio.it/www/
         DocumentRoot /var/www/esempio.it/
        Alias /phpmyadmin /usr/share/phpmyadmin
        Alias /mailmanager /var/www/mailmanager
 
        <Directory />
                Options FollowSymLinks
                AllowOverride All
        </Directory>
 
        <Directory /var/www/esempio.it/>
                Options -Indexes -FollowSymLinks +MultiViews
                AllowOverride All
               
                # Da Stretch
                Require all granted
                #Require ip 10.0.0.0/24
                #Require local
 
                # Fino a Jessie
                Order allow,deny
                Allow from all
                #Allow from 10.0.0.0/24
                #Allow from 192.168.90.0/24
 
 
###############
# Drupal Conf #
###############
        # Da usare se il Virtual Host usa Drupal
                #RewriteEngine on
                #RewriteBase /
                #RewriteCond %{REQUEST_FILENAME} !-f
                #RewriteCond %{REQUEST_FILENAME} !-d
                #RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
        #<ifModule mod_security2.c>
        #      SecRuleEngine off
        #</ifModule>
###################
# End Drupal Conf #
###################
 
        </Directory>
 
 
####################
# Webalizer Conf  ##
####################
        #<Directory /var/www/esempio.it/webalizer/>
                #Options Indexes FollowSymLinks MultiViews
                #AllowOverride None
                #Order allow,deny
                #Allow from all
                #Allow from 10.0.0.0/24
                #Allow from 192.168.90.0/24
                #Autenticazione
                #AuthType Digest
                #AuthName "utente"
                #AuthUserFile  /var/www/esempio.it/www/webalizer/.htpasswd
                #require valid-user
        #</Directory>
######################
# End Webalizer Conf #
######################
 


         # CGI Directory
         # CGI Directory
         ScriptAlias /cgi-bin/ /var/www/www.esempio.it/cgi-bin/
         #ScriptAlias /cgi-bin/ /var/www/esempio.it/cgi-bin/
         <Location /cgi-bin>
         #<Location /cgi-bin>
                Options +ExecCGI
        #        Options +ExecCGI
         </Location>
         #</Location>


        # Logfiles
        # Ricordarsi di creare la directory
        ErrorLog  /var/log/apache2/www.esempio.it/error.log
        CustomLog /var/log/apache2/www.esempio.it/access.log combined


        # Logfiles
        ErrorLog  /var/log/www.esempio.it/error.log
        CustomLog /var/log/www.esempio.it/access.log combined
</VirtualHost>
</VirtualHost>
</pre>
</pre>
Riga 75: Riga 146:
         # Indexes + Directory Root.
         # Indexes + Directory Root.
         DirectoryIndex index.html index.htm index.php
         DirectoryIndex index.html index.htm index.php
         DocumentRoot /var/www/www.esempio.org/www/
         DocumentRoot /var/www/esempio.org/
        Alias /phpmyadmin /usr/share/phpmyadmin
        Alias /mailmanager /var/www/mailmanager
 
        <Directory />
                Options FollowSymLinks
                AllowOverride All
        </Directory>
 
        <Directory /var/www/esempio.org/>
                Options -Indexes -FollowSymLinks MultiViews
                AllowOverride All
              # Da Stretch
                Require all granted
                #Require ip 10.0.0.0/24
                #Require local
 
                # Fino a Jessie
                Order allow,deny
                Allow from all
                #Allow from 10.0.0.0/24
                #Allow from 192.168.90.0/24
 
 
 
###############
# Drupal Conf #
###############
        # Da usare se il Virtual Host usa Drupal
                #RewriteEngine on
                #RewriteBase /
                #RewriteCond %{REQUEST_FILENAME} !-f
                #RewriteCond %{REQUEST_FILENAME} !-d
                #RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
        #<ifModule mod_security2.c>
        #      SecRuleEngine off
        #</ifModule>
###################
# End Drupal Conf #
###################
 
        </Directory>
 
 
####################
# Webalizer Conf  ##
####################
        #<Directory /var/www/esempio.org/webalizer/>
                #Options Indexes FollowSymLinks MultiViews
                #AllowOverride None
                #Order allow,deny
                #Allow from all
                #Allow from 10.0.0.0/24
                #Allow from 192.168.90.0/24
                #Autenticazione
                #AuthType Digest
                #AuthName "utente"
                #AuthUserFile  /var/www/esempio.org/www/webalizer/.htpasswd
                #require valid-user
        #</Directory>
######################
# End Webalizer Conf #
######################
 


         # CGI Directory
         # CGI Directory
         ScriptAlias /cgi-bin/ /var/www/www.esempio.org/cgi-bin/
         #ScriptAlias /cgi-bin/ /var/www/esempio.org/cgi-bin/
         <Location /cgi-bin>
         #<Location /cgi-bin>
                Options +ExecCGI
        #        Options +ExecCGI
         </Location>
         #</Location>


        # Logfiles
        # Ricordarsi di creare la directory
        ErrorLog  /var/log/apache2/www.esempio.org/error.log
        CustomLog /var/log/apache2/www.esempio.org/access.log combined


        # Logfiles
        ErrorLog  /var/log/www.esempio.org/error.log
        CustomLog /var/log/www.esempio.org/access.log combined
</VirtualHost>
</VirtualHost>
</pre>
</pre>
Riga 112: Riga 248:
e riavviamo Apache:
e riavviamo Apache:
<pre>
<pre>
# /etc/init.d/apache2 reload
# service apache2 reload
# /etc/init.d/apache2 restart
# service apache2 restart
</pre>
</pre>


Riga 139: Riga 275:
Se avete la necessità di concedere ad ogni proprietario di un dominio la possibilità di accedere via FTP alla propria <code>DocumentRoot</code>, senza lasciarlo uscire da quella e senza permettergli di navigare nelle <code>DocumentRoot</code> degli altri utenti, consiglio di seguire questa guida: [[Installare un server FTP con utenti virtuali su MySQL]].  
Se avete la necessità di concedere ad ogni proprietario di un dominio la possibilità di accedere via FTP alla propria <code>DocumentRoot</code>, senza lasciarlo uscire da quella e senza permettergli di navigare nelle <code>DocumentRoot</code> degli altri utenti, consiglio di seguire questa guida: [[Installare un server FTP con utenti virtuali su MySQL]].  


{{Autori|Autore=[[Utente:Ferdybassi|Ferdybassi]] 23:46, 6 nov 2010 (CET)}}
{{Autori
|Autore=[[Utente:Ferdybassi|Ferdybassi]] 23:46, 6 nov 2010 (CET)
}}
 
[[Categoria:Web server]]
[[Categoria:Web server]]

Menu di navigazione