Heim > Betrieb und Instandhaltung > Nginx > Wie Nginx die domänennamenbasierte Konfiguration virtueller Hosts implementiert

Wie Nginx die domänennamenbasierte Konfiguration virtueller Hosts implementiert

PHPz
Freigeben: 2023-11-08 20:05:19
Original
1039 Leute haben es durchsucht

Wie Nginx die domänennamenbasierte Konfiguration virtueller Hosts implementiert

Wie Nginx die domänennamenbasierte virtuelle Hostkonfiguration implementiert, erfordert spezifische Codebeispiele

Nginx ist ein leistungsstarker HTTP- und Reverse-Proxy-Server, der flexible Konfigurationsoptionen zur Implementierung der domänennamenbasierten virtuellen Hostkonfiguration bietet. In diesem Artikel stellen wir detailliert vor, wie Nginx für die Implementierung von domänennamenbasiertem virtuellem Hosting konfiguriert wird, und stellen spezifische Codebeispiele bereit.

Zuerst müssen wir den virtuellen Host-Konfigurationsblock zur Nginx-Konfigurationsdatei hinzufügen. Auf Ubuntu-Systemen lautet der Standardpfad der Konfigurationsdatei /etc/nginx/nginx.conf. Bitte öffnen Sie die Datei mit einem Texteditor und fügen Sie den folgenden Code hinzu:

http {
    server {
        listen 80;
        server_name example.com;
        root /var/www/example.com/html;
        index index.html;
    }
    
    server {
        listen 80;
        server_name example.org;
        root /var/www/example.org/html;
        index index.html;
    }
    
    # 添加更多的虚拟主机配置块...
}
Nach dem Login kopieren

Im obigen Code haben wir zwei virtuelle Hosts definiert: example.com und example.org. Jeder virtuelle Host-Konfigurationsblock enthält die folgenden wichtigen Konfigurationselemente:

  • listen: Gibt die Portnummer an, die der virtuelle Host überwacht. Hier verwenden wir Port 80. listen:指定虚拟主机监听的端口号,这里我们使用了80端口。
  • server_name:指定虚拟主机对应的域名或IP地址。在上述示例中,我们分别使用了example.com和example.org。
  • root:指定虚拟主机的根目录。这里我们假设每个虚拟主机的网页文件都存放在不同的目录下。
  • index:指定虚拟主机的默认首页文件。

接下来,我们需要确保虚拟主机的网页文件目录存在,并且具有正确的文件权限。在上述示例中,我们假设example.com的网页文件目录为/var/www/example.com/html,example.org的网页文件目录为/var/www/example.org/html。请根据实际情况创建这些目录,并确保Nginx有访问权限。

完成上述配置后,保存并退出Nginx的配置文件。然后,使用以下命令重新加载Nginx配置文件:

sudo nginx -s reload
Nach dem Login kopieren

现在,我们已经完成了基于域名的虚拟主机配置。当用户通过浏览器访问example.com或example.org时,Nginx会根据请求的域名来选择对应的虚拟主机进行处理。

如果你有更多的域名需要配置虚拟主机,请按照上述示例添加更多的虚拟主机配置块,并相应地修改server_name和root配置项。

最后,我们提供以下一些常用的Nginx配置指令来进一步优化基于域名的虚拟主机配置:

  • access_log:用于确定是否生成访问日志以及日志的存放位置。
  • error_log:用于确定是否生成错误日志以及日志的存放位置。
  • location
  • server_name: Geben Sie den Domänennamen oder die IP-Adresse an, die dem virtuellen Host entspricht. Im obigen Beispiel haben wir example.com bzw. example.org verwendet.

root: Geben Sie das Stammverzeichnis des virtuellen Hosts an. Hier gehen wir davon aus, dass die Webseitendateien jedes virtuellen Hosts in unterschiedlichen Verzeichnissen gespeichert sind.

index: Geben Sie die Standard-Homepage-Datei des virtuellen Hosts an.

🎜🎜Als nächstes müssen wir sicherstellen, dass das Webdateiverzeichnis des virtuellen Hosts vorhanden ist und über die richtigen Dateiberechtigungen verfügt. Im obigen Beispiel gehen wir davon aus, dass das Webseitendateiverzeichnis von example.com /var/www/example.com/html und das Webseitendateiverzeichnis von example.org /var/www/example.org/html ist . Bitte erstellen Sie diese Verzeichnisse entsprechend den tatsächlichen Bedingungen und stellen Sie sicher, dass Nginx über Zugriffsberechtigungen verfügt. 🎜🎜Speichern und beenden Sie nach Abschluss der obigen Konfiguration die Nginx-Konfigurationsdatei. Laden Sie dann die Nginx-Konfigurationsdatei mit dem folgenden Befehl neu: 🎜rrreee🎜 Jetzt haben wir die domänennamenbasierte Konfiguration des virtuellen Hosts abgeschlossen. Wenn ein Benutzer über einen Browser auf example.com oder example.org zugreift, wählt Nginx basierend auf dem angeforderten Domänennamen den entsprechenden virtuellen Host zur Verarbeitung aus. 🎜🎜Wenn Sie mehr Domänennamen haben, die mit virtuellen Hosts konfiguriert werden müssen, befolgen Sie bitte das obige Beispiel, um weitere Konfigurationsblöcke für virtuelle Hosts hinzuzufügen, und ändern Sie die Konfigurationselemente server_name und root entsprechend. 🎜🎜Abschließend stellen wir die folgenden allgemeinen Nginx-Konfigurationsanweisungen zur Verfügung, um die domänennamenbasierte Konfiguration virtueller Hosts weiter zu optimieren: 🎜🎜🎜access_log: Wird verwendet, um zu bestimmen, ob Zugriffsprotokolle generiert werden und wo die Protokolle gespeichert werden. 🎜🎜error_log: Wird verwendet, um zu bestimmen, ob ein Fehlerprotokoll erstellt werden soll und wo das Protokoll gespeichert wird. 🎜🎜location: Wird verwendet, um das Verhalten des virtuellen Hosts weiter anzupassen, z. B. die Konfiguration von URL-Umschreibungsregeln oder Reverse-Proxy. 🎜🎜🎜Durch die flexible Nutzung der oben genannten Anweisungen können Sie den virtuellen Host detaillierter konfigurieren und optimieren. 🎜🎜Zusammenfassung: In diesem Artikel wird detailliert beschrieben, wie Sie mit Nginx eine domänennamenbasierte virtuelle Hostkonfiguration implementieren, und es werden spezifische Codebeispiele bereitgestellt. Durch die Konfiguration des virtuellen Hosts von Nginx gemäß dem Beispiel können wir problemlos unterschiedliche Website-Inhalte für mehrere Domänennamen hosten und eine bessere Benutzererfahrung bieten. Ich hoffe, dass dieser Artikel für Schüler hilfreich sein wird, die Nginx lernen. 🎜

Das obige ist der detaillierte Inhalt vonWie Nginx die domänennamenbasierte Konfiguration virtueller Hosts implementiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage