Tato příručka vysvětluje, jak můžete použít mod_mysql_vhost k vytvoření jednoduchých virtuálních hostitelů na webovém serveru lighttpd na Ubuntu 12.04. S mod_mysql_vhost může lighttpd číst konfiguraci vhost z databáze MySQL. V současné době můžete uložit doménu a kořen dokumentu v databázi MySQL, což vede k velmi jednoduchým virtuálním hostitelům. Pokud pro své vhosty potřebujete více direktiv, budete je muset nakonfigurovat v globální sekci lighttpd.conf, což znamená, že budou platné pro všechny vhosty. Proto je mod_mysql_vhost ideální, pokud se vaši hostitelé vhost liší pouze v doméně a kořenovém adresáři dokumentu.
Neposkytuji žádnou záruku, že to pro vás bude fungovat!
1 předběžná poznámka
Protože musíme všechny kroky z tohoto tutoriálu spustit s právy root, můžeme buď před všechny příkazy v tomto tutoriálu přidat řetězec sudo, nebo se staneme rootem hned teď zadáním
sudo su
2 Instalace MySQL 5.0
Nejprve nainstalujeme MySQL 5 takto:
apt-get install mysql-server mysql-client
Budete požádáni o zadání hesla pro uživatele root MySQL – toto heslo je platné pro uživatele [chráněno e-mailem] i [chráněno e-mailem], takže později nemusíme heslo root MySQL zadávat ručně:
Nové heslo pro uživatele "root" MySQL:<-- yourrootsqlpassword
Opakujte heslo pro uživatele "root" MySQL:<-- yourrootsqlpassword
3 Instalace Lighttpd And mod_mysql_vhost
Lighttpd (pokud již není nainstalován) a mod_mysql_vhost můžete nainstalovat následovně:
apt-get install lighttpd lighttpd-mod-mysql-vhost
Chcete-li povolit mod_mysql_vhost, otevřeme /etc/lighttpd/lighttpd.conf a přidáme/povolíme "mod_mysql_vhost" ve stanze server.modules:
vi /etc/lighttpd/lighttpd.conf
server.modules =( "mod_access", "mod_alias", "mod_compress", "mod_redirect", "mod_mysql_vhost",# "mod_rewrite",) [...] |
Poté restartujeme lighttpd:
/etc/init.d/lighttpd restart
4 Konfigurace mod_mysql_vhost
Nyní se přihlásíme do MySQL...
mysql -u root -p
... a vytvořte databázi lighttpd:
VYTVOŘIT DATABÁZI lighttpd;
Dále vytvoříme databázového uživatele (kterého také pojmenujeme lighttpd) s oprávněními SELECT pro databázi lighttpd:
GRANT SELECT ON lighttpd.* TO [email protected] IDENTIFIED BY 'secret';
GRANT SELECT ON lighttpd.* TO [email protected] IDENTIFIED BY 'secret';
FLUSH PRIVILEGES;(Nahraďte tajné heslo heslem dle vašeho výběru.)
Poté vytvoříme tabulku domén v databázi lighttpd a ponecháme MySQL:
POUŽÍVEJTE lighttpd;CREATE TABLE domény (
doména varchar(64) není primární klíč null,
docroot varchar(128) není null
);ukončit;Nyní otevřeme /etc/lighttpd/lighttpd.conf a na konec souboru přidáme následující konfiguraci mod_mysql_vhost:
vi /etc/lighttpd/lighttpd.conf
[...]mysql-vhost.db ="lighttpd"mysql-vhost.user ="lighttpd"mysql-vhost.pass ="tajné "mysql-vhost.sql ="VYBRAT docroot Z domén WHERE domain='?';"mysql-vhost.hostname ="localhost"mysql-vhost.port =3306 |
(Nahraďte tajné heslo heslem, které jste dříve nastavili pro uživatele lighttpd MySQL.)
Restartujte lighttpd:
/etc/init.d/lighttpd restart
Nyní je čas nakonfigurovat virtuální hostitele...
5 Konfigurace virtuálních hostitelů
Nyní nakonfiguruji dva virtuální hostitele, jeden pro www.example.com (s kořenem dokumentu /var/www/www.example.com/web) a jeden pro www.example.org (s kořenem dokumentu /var/www /www.example.org/web).
Nejprve vytvoříme kořeny dokumentů obou webových stránek (pokud ještě neexistují):
mkdir -p /var/www/www.example.com/web
mkdir -p /var/www/www.example.org/web
Poté se přihlásíme do MySQL...
mysql -u root -p
POUŽÍVEJTE lighttpd;
... a vytvořte vhost takto:
INSERT INTO domén VALUES ('www.example.com','/var/www/www.example.com/web/');
INSERT INTO domén VALUES ('www.example.org', '/var/www/www.example.org/web/');
Nyní můžeme opustit prostředí MySQL:
ukončit;
To je vše, vhosts jsou nyní nakonfigurovány a fungují a není vyžadován žádný restart lighttpd.
Abychom zkontrolovali, zda vhosts fungují podle očekávání, vytvoříme v každém kořenovém adresáři dokumentu soubor index.html, jeden s řetězcem „www.example.com“ a druhý s řetězcem „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
a zavolejte v prohlížeči http://www.example.com a http://www.example.org. http://www.example.com by měla zobrazovat www.example.com a http://www.example.org by měla zobrazovat www.example.org.
6 odkazů
- mod_mysql_vhost:http://redmine.lighttpd.net/projects/1/wiki/Docs:ModMySQLVhost
- Lighttpd:http://www.lighttpd.net/
- Ubuntu:http://www.ubuntu.com/