GNU/Linux >> Linux Esercitazione >  >> Debian

Creazione di semplici host virtuali con mod_mysql_vhost su Lighttpd (Debian Squeeze)

Questa guida spiega come utilizzare mod_mysql_vhost per creare semplici host virtuali su un server web lighttpd su Debian Squeeze. Con mod_mysql_vhost, lighttpd può leggere la configurazione di vhost da un database MySQL. Attualmente, puoi archiviare il dominio e la radice del documento nel database MySQL, il che si traduce in host virtuali molto semplici. Se hai bisogno di più direttive per i tuoi vhost, dovresti configurarle nella sezione globale di lighttpd.conf, il che significa che sarebbero valide per tutti i vhost. Pertanto, mod_mysql_vhost è l'ideale se i tuoi vhost differiscono solo nel dominio e nella root del documento.

Non garantisco che questo funzionerà per te!

1 Installazione di MySQL 5.0

Per prima cosa installiamo MySQL 5 in questo modo:

apt-get install mysql-server mysql-client

Ti verrà chiesto di fornire una password per l'utente root di MySQL:questa password è valida per l'utente [protetto tramite posta elettronica] e [protetto tramite posta elettronica], quindi non è necessario specificare manualmente una password di root MySQL in seguito:

Nuova password per l'utente "root" di MySQL:<-- yourrootsqlpassword
Ripeti la password per l'utente "root" di MySQL:<-- yourrootsqlpassword

2 Installazione di Lighttpd e mod_mysql_vhost

Puoi installare lighttpd (se non è già installato) e mod_mysql_vhost come segue:

apt-get install lighttpd lighttpd-mod-mysql-vhost

Per abilitare mod_mysql_vhost, apriamo /etc/lighttpd/lighttpd.conf e aggiungiamo/abilitiamo "mod_mysql_vhost", nella stanza server.modules:

vi /etc/lighttpd/lighttpd.conf
server.modules = (
        "mod_access",
        "mod_alias",
        "mod_compress",
        "mod_redirect",
        "mod_mysql_vhost",
#       "mod_rewrite",
)
[...]

Successivamente, riavviamo lighttpd:

/etc/init.d/lighttpd restart

3 Configurazione di mod_mysql_vhost

Ora accediamo a MySQL...

mysql -u root -p

... e crea il database lighttpd:

CREATE DATABASE lighttpd;

Quindi creiamo un utente del database (che chiamiamo anche lighttpd) con privilegi SELECT per il database lighttpd:

GRANT SELECT ON lighttpd.* TO [email protected] IDENTIFIED BY 'secret';
GRANT SELECT ON lighttpd.* TO [email protected] IDENTIFIED BY 'secret';
FLUSH PRIVILEGES;

(Sostituisci segreto con una password a tua scelta.)

Quindi creiamo la tabella dei domini nel database lighttpd e lasciamo MySQL:

USE lighttpd;
CREATE TABLE domains (
domain varchar(64) not null primary key,
docroot varchar(128) not null
);
quit;

Ora apriamo /etc/lighttpd/lighttpd.conf e aggiungiamo la seguente configurazione mod_mysql_vhost alla fine del file:

vi /etc/lighttpd/lighttpd.conf
[...]
mysql-vhost.db             = "lighttpd"
mysql-vhost.user           = "lighttpd"
mysql-vhost.pass           = "secret"
mysql-vhost.sql            = "SELECT docroot FROM domains WHERE domain='?';"
mysql-vhost.hostname       = "localhost"
mysql-vhost.port           = 3306

(Sostituisci secret con la password che hai precedentemente impostato per l'utente MySQL lighttpd.)

Riavvia lighttpd:

/etc/init.d/lighttpd restart

Ora è il momento di configurare gli host virtuali...

4 Configurazione degli host virtuali

Ora configurerò due host virtuali, uno per www.example.com (con la radice del documento /var/www/www.example.com/web) e uno per www.example.org (con la radice del documento /var/www /www.example.org/web).

Per prima cosa, creiamo le radici dei documenti di entrambi i siti web (se non esistono già):

mkdir -p /var/www/www.example.com/web
mkdir -p /var/www/www.example.org/web

Quindi accediamo a MySQL...

mysql -u root -p
USE lighttpd;

... e crea i vhost come segue:

INSERT INTO domains VALUES ('www.example.com','/var/www/www.example.com/web/');
INSERT INTO domains VALUES ('www.example.org','/var/www/www.example.org/web/');

Ora possiamo lasciare la shell MySQL:

quit;

Ecco fatto, i vhost sono ora configurati e funzionanti e non è richiesto il riavvio di lighttpd.

Per verificare se i vhost funzionano come previsto, creiamo un file index.html in ogni root del documento, uno con la stringa "www.example.com" e l'altro con la stringa "www.example.org". ..

echo "www.example.com" > /var/www/www.example.com/web/index.html
echo "www.example.org" > /var/www/www.example.org/web/index.html

e chiama http://www.example.com e http://www.example.org in un browser. http://www.example.com dovrebbe mostrare www.example.com e http://www.example.org dovrebbe mostrare www.example.org.

  • mod_mysql_vhost:http://redmine.lighttpd.net/projects/1/wiki/Docs:ModMySQLVhost
  • Lighttpd:http://www.lighttpd.net/
  • Debian:http://www.debian.org/

Debian
  1. Creazione di semplici host virtuali con mod_mysql_vhost su Lighttpd (Ubuntu 12.10)

  2. Creazione di semplici host virtuali con mod_mysql_vhost su Lighttpd (Debian Etch)

  3. Creazione di un server di archiviazione autonomo simile a NFS con GlusterFS 3.0.x su Debian Squeeze

  4. Come eseguire il backup dei database MySQL con mylvmbackup su Debian Squeeze

  5. Come installare WebDAV con Lighttpd su Debian 8 (Jessie)

Utilizzo di mod_spdy con Apache2 su Debian Squeeze

Hosting virtuale con vsftpd e MySQL su Debian Squeeze

Utenti virtuali e domini con Postfix, Courier, MySQL e SquirrelMail (Debian Wheezy)

Installazione di Lighttpd con PHP5 (PHP-FPM) e supporto MySQL su Debian Wheezy

Installazione di Lighttpd con PHP5 (PHP-FPM) e MySQL su Debian 8 (Jessie)

Ambiente multiserver virtuale con server Web e MySQL, e-mail e DNS dedicati su Debian Squeeze con ISPConfig 3