Um virtuelle Hosts in Apache für das Hosting mehrerer Websites zu konfigurieren, müssen Sie folgende Schritte befolgen:
httpd.conf
oder apache2.conf
bezeichnet werden, suchen und bearbeiten. Möglicherweise müssen Sie möglicherweise separate Konfigurationsdateien in einem Verzeichnis wie /etc/apache2/sites-available/
erstellen. Erstellen Sie virtuelle Host -Einträge :
Für jede Website müssen Sie in der Konfigurationsdatei einen <virtualhost></virtualhost>
-Block erstellen. Hier ist ein Beispiel für zwei verschiedene Websites:
<code class="apache"><virtualhost> ServerName www.example1.com DocumentRoot /var/www/example1 <directory> Options Indexes FollowSymLinks MultiViews AllowOverride All Require all granted </directory> ErrorLog ${APACHE_LOG_DIR}/example1-error.log CustomLog ${APACHE_LOG_DIR}/example1-access.log combined </virtualhost> <virtualhost> ServerName www.example2.com DocumentRoot /var/www/example2 <directory> Options Indexes FollowSymLinks MultiViews AllowOverride All Require all granted </directory> ErrorLog ${APACHE_LOG_DIR}/example2-error.log CustomLog ${APACHE_LOG_DIR}/example2-access.log combined </virtualhost></code>
DocumentRoot
und <directory></directory>
mit den Verzeichnissen auf Ihrem Server übereinstimmen, in denen sich die Dateien der einzelnen Website befinden./etc/apache2/sites-enabled/
oder einen Befehl wie a2ensite example1
auf Debian-basierten Systemen verwenden. APache neu starten :
Starten oder laden Sie Apache neu, um die neue Konfiguration anzuwenden:
<code>sudo systemctl restart apache2</code>
oder
<code>sudo apachectl restart</code>
Betrachten Sie beim Einrichten verschiedener Domänen auf einem einzelnen Apache -Server die folgenden Best Practices:
Include
-Anweisungen in der Hauptkonfigurationsdatei verwaltet werden.ServerName
-Direktive in jedem <virtualhost></virtualhost>
-Block.<virtualhost></virtualhost>
-blöcke mit den Direktiven SSLEngine
, SSLCertificateFile
und SSLCertificateKeyFile
konfigurieren.ErrorLog
und CustomLog
-Direktiven erreicht werden.Allow
, Deny
und Require
.mod_deflate
für die Komprimierung.Fehlerbehebung von Apache -Hosts können eine Herausforderung sein, aber hier sind einige Schritte, um gemeinsame Probleme zu lösen:
apachectl configtest
um die Syntaxfehler in Ihrer Apache -Konfiguration zu überprüfen./var/log/apache2/
oder in einem ähnlichen Verzeichnis gefunden werden.ServerName
und DocumentRoot
für jeden virtuellen Host korrekt festgelegt sind. Überprüfen Sie auch, ob die angegebenen Verzeichnisse tatsächlich existieren.DocumentRoot
oder widersprüchliche ServerName
-Richtlinien.Berücksichtigen Sie die folgenden Schritte, um sicherzustellen, dass Ihr Apache -Server mehrere Websites effizient verarbeitet:
mpm_event
oder mpm_worker
, der für die effizientere Verarbeitung hoher Parallelität ausgelegt ist als die herkömmliche mpm_prefork
.ServerLimit
, MaxClients
, StartServers
, MinSpareThreads
und MaxSpareThreads
an, um die Leistung anhand der Ressourcen und der erwarteten Last Ihres Servers zu optimieren.mod_deflate
, um den Inhalt zu komprimieren, bevor Sie ihn an den Client senden, die Bandbreitennutzung reduzieren und die Seitenladezeiten verbessern.mod_cache
oder mod_disk_cache
, um häufig angeforderte Inhalte zu speichern, um den Serverlast zu reduzieren und die Antwortzeiten zu verbessern.mod_status
und passen Sie die Konfigurationen nach Bedarf an. Achten Sie auf die Nutzung der Ressourcen und passen Sie sie entsprechend an.Wenn Sie diese Schritte und Best Practices befolgen, können Sie sicherstellen, dass Ihr Apache -Server mehrere Websites effizient verarbeitet und gleichzeitig eine gute Leistung und Zuverlässigkeit beibehalten.
Das obige ist der detaillierte Inhalt vonWie konfiguriere ich virtuelle Hosts in Apache für mehrere Websites?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!