Script php per aggiungere un nuovo virtual site sotto Apache.

Creare lo script nella cartella desiderata

vim scriptname.php


Incollare dentro

#!/usr/bin/php5
<?
$dominio = $_SERVER["argv"][1];
if ($dominio == ""){
  die ("Specificare nome del dominio\n");
}
 
//creo file di configurazione apache
$temp = <<<EOF
#{$dominio}
<VirtualHost *:80>
        ServerName {$dominio}
        ServerAlias *.{$dominio}
        DocumentRoot /var/www/{$dominio}
        ErrorLog /var/log/apache2/{$dominio}_error.log
        CustomLog /var/log/apache2/{$dominio}_access.log combined
 
        # Possible values include: debug, info, notice, warn, error, crit, alert, emerg.
        LogLevel warn
</VirtualHost>
EOF;
 
if (!file_put_contents("/etc/apache2/sites-available/" . $dominio,$temp)){
  die ("Errore durante la scrittura del file di configurazione apache\n");
}
echo "Creato /etc/apache2/sites-available/" . $dominio . "\n";
 
//creo /var/www/
exec ("mkdir /var/www/{$dominio}");
echo "Creata /var/www/{$dominio}\n";
 
//assegno proprietario e permessi
exec ("chown www-data.www-data /var/www/{$dominio}");
exec ("chmod g+ws /var/www/{$dominio}");
//abilito il sito creato e faccio reload
exec ("a2ensite {$dominio}");
exec ("/etc/init.d/apache2 reload");
echo "Sito {$dominio} abilitato e funzionante";
?>

Assegnare i permessi per l’esecuzione

chmod a+x scriptname.php

Per aggiugnere un nuovo host eseguire dalla scell

./scriptname.php domain.com
Condividi:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • email
  • Google Bookmarks
  • LinkedIn
  • PDF
  • Reddit

Related posts:

  1. Configurare multipli domini sotto unico percorso con lighttpd
  2. Nascondere le applicazioni dalla dock
  3. Reverse Proxy di Interfaccia Web(WebGui) di Utorrent con Apache mod_proxy
  4. Installare subversion su ubuntu 8.04 e configurare svnserve
Nessun commento ancora

Lascia un commento

XHTML: Puoi usare questi tag: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word