GNU/Linux >> LINUX-Kenntnisse >  >> Debian

Erstellen einfacher virtueller Hosts mit mod_mysql_vhost auf Lighttpd (Debian Squeeze)

Diese Anleitung erklärt, wie Sie mod_mysql_vhost verwenden können, um einfache virtuelle Hosts auf einem lighttpd-Webserver unter Debian Squeeze zu erstellen. Mit mod_mysql_vhost kann lighttpd die vhost-Konfiguration aus einer MySQL-Datenbank lesen. Derzeit können Sie die Domain und den Dokumentenstamm in der MySQL-Datenbank speichern, was zu sehr einfachen virtuellen Hosts führt. Wenn Sie weitere Direktiven für Ihre vhosts benötigen, müssten Sie diese im globalen Abschnitt von lighttpd.conf konfigurieren, was bedeutet, dass sie für alle vhosts gültig wären. Daher ist mod_mysql_vhost ideal, wenn sich Ihre vhosts nur in der Domäne und dem Dokumentenstamm unterscheiden.

Ich gebe keine Garantie dafür, dass dies bei Ihnen funktioniert!

1 Installation von MySQL 5.0

Zuerst installieren wir MySQL 5 wie folgt:

apt-get install mysql-server mysql-client

Sie werden aufgefordert, ein Passwort für den MySQL-Root-Benutzer anzugeben – dieses Passwort gilt sowohl für den Benutzer [email protected] als auch für [email protected], sodass wir später kein MySQL-Root-Passwort manuell angeben müssen:

Neues Passwort für den MySQL-"root"-Benutzer:<-- yourrootsqlpassword
Wiederholen Sie das Passwort für den MySQL-"root"-Benutzer:<-- yourrootsqlpassword

2 Installation von Lighttpd und mod_mysql_vhost

Sie können lighttpd (falls noch nicht installiert) und mod_mysql_vhost wie folgt installieren:

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

Um mod_mysql_vhost zu aktivieren, öffnen wir /etc/lighttpd/lighttpd.conf und fügen/aktivieren „mod_mysql_vhost“ in der Zeilengruppe server.modules hinzu:

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

Danach starten wir lighttpd neu:

/etc/init.d/lightpd Neustart

3 Konfigurieren von mod_mysql_vhost

Jetzt melden wir uns bei MySQL an...

mysql -u root -p

... und erstelle die Datenbank lighttpd:

DATENBANK ERSTELLEN lighttpd;

Als nächstes erstellen wir einen Datenbankbenutzer (den wir ebenfalls lighttpd nennen) mit SELECT-Berechtigungen für die lighttpd-Datenbank:

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

(Ersetzen Sie secret durch ein Passwort Ihrer Wahl.)

Dann erstellen wir die Domänentabelle in der lighttpd-Datenbank und verlassen MySQL:

LIGHTTPD VERWENDEN;
CREATE TABLE domains (
domain varchar(64) not null primary key,
docroot varchar(128) not null
);
beenden;

Jetzt öffnen wir /etc/lighttpd/lighttpd.conf und fügen die folgende mod_mysql_vhost-Konfiguration am Ende der Datei hinzu:

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

(Ersetzen Sie secret durch das Passwort, das Sie zuvor für den Lighttpd-MySQL-Benutzer festgelegt haben.)

lighttpd neu starten:

/etc/init.d/lightpd Neustart

Jetzt ist es an der Zeit, virtuelle Hosts zu konfigurieren...

4 Virtuelle Hosts konfigurieren

Ich werde jetzt zwei virtuelle Hosts konfigurieren, einen für www.example.com (mit dem Dokumentenstamm /var/www/www.example.com/web) und einen für www.example.org (mit dem Dokumentenstamm /var/www /www.example.org/web).

Zuerst erstellen wir die Document Roots beider Websites (falls sie noch nicht existieren):

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

Dann melden wir uns bei MySQL an...

mysql -u root -p
LIGHTTPD VERWENDEN;

... und erstellen Sie die vhosts wie folgt:

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/');

Wir können jetzt die MySQL-Shell verlassen:

beenden;

Das war's, die vhosts sind jetzt konfiguriert und funktionieren, und es ist kein lighttpd-Neustart erforderlich.

Um zu überprüfen, ob die vhosts wie erwartet funktionieren, erstellen wir in jedem Dokumentenstamm eine index.html-Datei, eine mit der Zeichenfolge „www.example.com“ darin, die andere mit der Zeichenfolge „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

und rufen Sie in einem Browser http://www.example.com und http://www.example.org auf. http://www.example.com sollte www.example.com anzeigen und http://www.example.org sollte www.example.org anzeigen.

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

Debian
  1. Erstellen einfacher virtueller Hosts mit mod_mysql_vhost auf Lighttpd (Ubuntu 12.04)

  2. Erstellen einfacher virtueller Hosts mit mod_mysql_vhost auf Lighttpd (Ubuntu 12.10)

  3. Erstellen einfacher virtueller Hosts mit mod_mysql_vhost auf Lighttpd (Debian Etch)

  4. Erstellen eines NFS-ähnlichen eigenständigen Speicherservers mit GlusterFS 3.0.x auf Debian Squeeze

  5. So sichern Sie MySQL-Datenbanken mit mylvmbackup auf Debian Squeeze

Verwendung von mod_spdy mit Apache2 auf Debian Squeeze

Virtuelles Hosting mit vsftpd und MySQL auf Debian Squeeze

Virtuelle Benutzer und Domains mit Postfix, Courier, MySQL und SquirrelMail (Debian Wheezy)

Installation von Lighttpd mit PHP5 (PHP-FPM) und MySQL-Unterstützung auf Debian Wheezy

Lighttpd mit PHP5 (PHP-FPM) und MySQL auf Debian 8 (Jessie) installieren

Virtuelle Multiserver-Umgebung mit dedizierten Web- und MySQL-, E-Mail- und DNS-Servern auf Debian Squeeze mit ISPConfig 3