Come aggiungere un sito al mio VPS Multisito su DigitalOcean. <alebal web Blog> | Appunti di PHP, MySql, javascript, Css, HTML, HTML5 e altro...

Ci siamo fatti un vps http://www.alebalweb-blog.com/47-digitalocean-installare-un-droplet-lamp-multisito-su-ubuntu-14-04.html, adesso vogliamo aggiungerci un nuovo sito.

Si comincia creando la cartella del sito sul server:

sudo mkdir -p /var/www/html/nuovosito.com

Poi i permessi:

sudo chown -R $USER:$USER /var/www/html/nuovosito.com

Adesso creaiamo un nuovo file di Virtual Host copiandone uno gia fatto, copio un sito mio gia fatto, non default, cosi ho anche tutte le impostazioni di url_rewriter, cache ecc. (i file virtualhost finiscono con .conf)

sudo cp /etc/apache2/sites-available/miovecchiosito.com.conf /etc/apache2/sites-available/nuovosito.com.conf

Lo apriamo con nano:

sudo nano /etc/apache2/sites-available/nuovosito.com.conf

Sostituiamo tutti i dati relativi al vecchio sito con i dati del nuovo, indirizzi e cartelle.

Lo abilitaimo

sudo a2ensite nuovosito.com.conf

e riavviamo Apache:

sudo service apache2 restart

Adesso aggiungi il dominio a digitalocean

Su Namesilo (o altro registar) metti i dns di digitalocean al dominio

ns1.digitalocean.com
ns2.digitalocean.com
ns3.digitalocean.com

poi aggiungi il dominio su digitalocean. Vai sul menu droplet e a destra sul droplet clicca More->Add a domain cosi per metà si configura già su questo droplet.

Dopo aver aggiunto il dominio clicca CNAME e aggiungi:

www -> @
* -> @

Deve venire cosi

digitalocean installare un droplet LAMP multisito su Ubuntu 14.04 | <alebal web Blog>

e già cosi il nuovo sito esiste. Se era un sito esistente su un altro server, dovrai importare tutto.


Iniziando dai database, lo si fa esportando un backup dal vecchio server e importandolo sul phpMyaAdmin del nuovo server, che trovi qui:

http://ip_del_droplet/phpmyadmin

Utenti e database li creo da qui, magari assegnando all'utente permessi solo sul nuovo database, si può fare dal pannello utenti, creando un utente e selezionando l'opzione "Crea un database con lo stesso nome e concedi tutti i privilegi".

Poi ti basta importare il backup del database e aggiornare database, utente e password nei file di configurazione della connessione al database del tuo sito.


Importare il database può essere un casino nei serverini di piccole dimensioni e risorse, si possono ricevere errori del tipo "Mysql se ne è andato! oppure "non riesco ad allocare la memoria", ecc ecc ecc.

Ci si salva importando i database da riga di comando.

Si creano sempre utenti e database da phpmyadmin.

Poi si carica il file .sql o .sql.zip via ftp in una cartella del tipo /var/html/www/mysql_dump/

A questo punto, se compresso, dezzippalo:

unzip /var/www/html/mysql_dump/nomedb.sql.zip -d /var/www/html/mysql_dump

Poi si importa via riga di comando, con questo:

mysql -u username -p database < /var/www/html/mysql_dump/nomedb.sql

Metti username e database creati in phpmyadmin.

Chiede la password di MySql, poi ci pensa un pò, alla fine dovresti avere il database importato.


Poi ti servono i file, potresti fare uno zip dal file manager del vecchio server e caricarlo via ftp sul nuovo server nella cartella appena creata /var/www/html/nuovosito.com

Poi però lo devi unzippare... e quindi installa o controlla che sia installato unzip:

sudo apt-get install unzip

Se è installato continua cosi:

unzip /var/www/html/nuovosito.com/nuovosito.com.zip -d /var/www/html/nuovosito.com

praticamente unzip, quale file, in quale cartella.

Probabilmente la creazione dello zip dal vecchio server ti ha creato un altra cartella tuosito.com e ti ritrovi con:

/var/www/html/nuovosito.com/nuovosito.com

Nulla di grave, basta selezionare tutto si Filezilla e trascinarlo sui 2 puntini in alto, praticamente sposti tutto nella cartella superiore. Poi cancella la cartella in più. 

Già che ci sei vedi se il vecchio server ti ha zippato anche cartelle o altri file inutili, tipo i log, le cartelle well_know, le cartelle che prima erano symlink ecc, e cancellale prima di spostare tutto.


Ora diamo una sistemata ai permessi, serve ad esempio per poter leggere e scrivere file via PHP.

chown -R www-data:www-data /var/www/html/nuovosito.com
chmod -R 755 /var/www/html/nuovosito.com

Se ti servono dovrai ricreare i symlink, ad esempio cosi:

ln -s /var/www/html/function_global /var/www/html/nuovosito.com/function_global

poi magari ti serve un cronjob:

crontab -e

copiane una riga di quelle già fatte e cambia gli indirizzi, ricordati di lasciare una riga vuota tra uno e l'altro... non so di preciso perchè, ma tutti dicono che serve...

Fatto! Il tuo nuovo sito è sul tuo vps.

Google Digg Reddit Tumblr Pinterest StumbleUpon Email

Rating: 4 out of 5 by 826 visitors

Leave your comment