
Giles Benson
0
2130
502
Så vill du vara värd för flera WordPress-bloggar på en enda server? Med Apache2 VirtualHost-funktionen kan man enkelt köra flera webbplatser på en enda server, och den här korta guiden kommer att visa dig hur du kan uppnå det.
Varje virtualhost körs oberoende av de andra. Så om du ska köra en WordPress-webbplats på varje VirtualHost kommer den att köras som om det är den enda webbplatsen på servern. Detta låter dig spara kostnader på ytterligare servrar och resurser.
Denna handledning kommer att bli kort ... och slöser inte bort din tid med andra onödiga saker.
Steg 1: Installera Ubuntu Server
Jag tycker att Ubuntu är lätt att hantera och underhålla så den här guiden kommer att baseras på Ubuntu Linux. Du kan få Apache2 VirtualHost att arbeta med andra Linux-distributioner, men Ubuntu är en bra distribution för nya användare och nybörjare.
Så installera Ubuntu med root-åtkomst och kör kommandona nedan för att uppdatera den.
sudo apt-get update && sudo apt-get dist-upgrade && sudo apt-get autoremove
Steg 2: Installera Apache2-webbservern
Efter uppdatering av Ubuntu kör du kommandona nedan för att installera Apache2-webbservern.
sudo apt-get install apache2
Steg 3: Installera MySQL-databasservern
Efter installationen av Apache2 kör du kommandona nedan för att installera MySQL-databasservern.
sudo apt-get install mysql-server mysql-client
Under installationen uppmanas du att skapa ett nytt lösenord för MySQL root-användare. Gör det! Detta lösenord kommer att användas för att logga in på MySQL-servern.
Steg 4: Installera PHP och andra moduler
Efter installationen av MySQL-servern kör du kommandona nedan för att installera PHP och andra PHP-moduler.sudo apt-get install php libapache2-mod-php php-mysql php-curl php-gd php-pear php-imagick php-imap php-mcrypt php-recode php-tidy php-xmlrpc
Vid den här tiden installeras alla servrar och paket som WordPress kräver för att fungera. Nästa steg är att skapa WordPress-databaser, konfigurera Apache2 VirtualHosts och ladda ner WordPress-innehåll från online.
Steg 5: Skapa WordPress-databaser och användare
Kör kommandona nedan för att logga in på MySQL-servern
sudo mysql -u root -p
WordPress kräver en databas. Kör kommandona nedan för att skapa nya databaser såväl som databasanvändare. Duplicera bara kommandona för ytterligare databaser och användare för så många du vill. Se till att de alla har unika namn.
Kommandona nedan skapar en ny databas som heter wpdatabase
SKAPA DATABAS wpdatabase;
Kommandona nedan skapar en ny databasanvändare som heter wpuser och ger användaren åtkomst till wpdatabasen.
BEVILJA ALLA wpdatabase. * TILL 'wpuser' @ 'localhost' IDENTIFIERAD AV 'type_new_password_here';
[alert-note] Upprepa stegen ovan för att skapa ytterligare databaser för ytterligare WordPress-webbplatser. Skapa till exempel databas wpdatabase1, wpdatabase2 samt användarna för ytterligare WordPress-webbplatser. [/ Alert-note]
När du är klar kör du kommandona nedan för att spara dina ändringar och avsluta.
FLUSH PRIVILEGES; utgång
Steg 6: Skapa flera VirtualHost för flera webbplatser
När du har skapat flera databaser för de flera WordPress-webbplatserna du vill köra, följ guiden nedan för att skapa flera VirtualHosts för webbplatserna. Kopiera standard Apache2-webbplatsens konfigurationsfil för att skapa ytterligare VirtualHosts (webbplatser).
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf sudo cp /etc/apache2/sites-available/000-default.conf / etc / apache2 /sites-available/example.net.conf
Du ser att vi skapar två virtualhosts för två olika webbplatser ... (exempel.com.conf och exempel.net.conf)
Var och en av ovanstående konfigurationsfiler är värd för en unik domän.
Öppna nu varje fil genom att köra kommandona nedan för varje ...
sudo nano /etc/apache2/sites-available/example.com.conf
Konfigurera sedan till exempel.com.conf-filen server namn, serveralias, DocumentRoot och andra unika för example.com-domänen. Upprepa samma för andra virtuella värdar.
# Du måste dock ställa in den för alla ytterligare virtuella värden uttryckligen. ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/html/exempel.com # Tillgängliga loglevels: trace8,…, trace1, felsökning, info, meddelande, varna, # fel, krit, varning, fram. # Det är också möjligt att konfigurera loglevel för vissa # moduler, t.ex. #LogLevel info ssl: varna ErrorLog $ APACHE_LOG_DIR /error.log CustomLog $ APACHE_LOG_DIR /access.log kombinerat # För de flesta konfigurationsfiler från conf-tillgängliga /, som är # aktiverade eller inaktiverade på global nivå, är det möjligt att # inkludera en rad för endast en viss virtuell värd. Till exempel kan följande rad aktivera CGI-konfigurationen för den här värden bara # efter att den har inaktiverats globalt med "a2disconf". #Include conf-available / serve-cgi-bin.conf # vim: syntax = apache ts = 4 sw = 4 st = 4 sr noet
Gör ovanstående för alla webbplatser som du vill vara värd ... var och en med unik identitet, inklusive DocumentRoot, ServerName, ServerAlias och Domain
När du är klar. spara dina ändringar och stäng.
Aktivera sedan de webbplatser du just skapat genom att köra kommandona nedan för var och en av de virtuella värdarna.
sudo a2ensite exempel.com.conf sudo a2ensite exempel.net.conf
Aktivera även andra moduler
sudo a2enmod rubriker sudo a2enmod skriva om sudo a2enmod env sudo a2enmod dir sudo a2enmod mime
Flytta nu nästa steg.
Steg 7: Skapa varje katalog för webbplatserna
Nu när du har konfigurerat flera webbplatser i Apache2, gå och skapa DocumentRoot-mapparna för var och en av de webbplatser som du definierade i konfigurationen ovan ... Raden som läser DocumentRoot ska matcha varje plats.
sudo mkdir -p /var/www/html/exempel.com sudo mkdir -p /var/www/html/exempel.net
Konfigurera lämpliga mappbehörigheter för alla webbplatser
sudo chown -R www-data: www-data / var / www / html sudo chmod -R 755 / var / www / html
Starta om Apache2-webbservern genom att köra kommandona nedan
sudo systemctl starta om apache2
Vid denna tidpunkt bör alla dina webbplatser redan vara för WordPress-innehåll. Gå sedan ner och ladda ner WordPress-innehåll och extrahera det till DocumentRoot mapp för varje webbplats.
Steg 8: Ladda ner WordPress-innehåll
Ladda ner nu WordPress-innehåll och extrahera det till rotkatalogen för varje webbplats.
cd / tmp / && wget http://wordpress.org/latest.tar.gz
Extrahera sedan den nedladdade filen.
tjära -xzvf senaste.tar.gz
Och kopiera till varje rotmapp för varje webbplats.
sudo cp -R wordpress / * /var/www/html/exempel.com sudo cp -R wordpress / * /var/www/html/exempel.net
Steg 9: Konfigurera WordPress-databasinställningar
Kör kommandona nedan för att skapa WordPress wp-config.php inställningsfilen från dess exempel.
sudo cp /var/www/html/exempel.com/wp-config-sample.php /var/www/html/exempel.com/wp-config.php sudo cp /var/www/html/exempel.net/wp -config-sample.php /var/www/html/exempel.net/wp-config.php
Öppna sedan wp-config.php filen och gör följande markerade ändringar för att referera till databasen och användaren du skapade ovan.
sudo nano /var/www/html/exempel.com/wp-config.php
När filen öppnas gör du ändringarna och sparar.
// ** MySQL-inställningar - Du kan få denna information från din webbhotell ** // / ** Namnet på databasen för WordPress * / define ('DB_NAME', 'wpdatabase'); / ** MySQL-databas användarnamn * / definiera ('DB_USER', 'wpuser'); / ** MySQL-databaslösenord * / definiera ('DB_PASSWORD', 'type_password_here'); / ** MySQL-värdnamn * / definiera ('DB_HOST', 'localhost'); / ** Databas Charset att använda för att skapa databastabeller. * / define ('DB_CHARSET', 'utf8'); / ** Typen databassortering. Ändra inte detta om du är osäker. * / define ('DB_COLLATE', ");
Gör ovanstående för varje webbplats du skapar och se till att databasanslutningsinformationen är korrekt för varje webbplats.
sudo systemctl ladda om apache2
Öppna nu din webbläsare och bläddra till servern domäner och du bör se WordPress standardinställningssida för varje webbplats.

Njut av!