service apache pour créer un hôte Web virtuel

Premièrement, le type d'hébergeur Web virtuel

1. Introduction à l'hébergement Web virtuel

Un hôte Web virtuel fait référence à l’exécution de plusieurs sites Web sur le même serveur, dont chacun n’occupe pas réellement le serveur entier indépendamment, il est donc appelé un hôte Web «virtuel». Les services d'hébergement Web virtuel peuvent utiliser pleinement les ressources matérielles du serveur, réduisant ainsi considérablement les coûts de construction et d'exploitation du site Web.

L'utilisation du service httpd peut être très pratique pour créer un serveur hôte virtuel, il suffit d'exécuter un service httpd pour prendre en charge un grand nombre de sites Web en même temps.

2. Trois types d'hôte Web virtuel pris en charge par le service Apache

2.1, en fonction du type de nom de domaine

Basé sur le nom de domaine: utilisez un nom de domaine différent pour chaque hôte virtuel, mais l'adresse IP correspondante est la même. Il s'agit du type d'hébergeur Web virtuel le plus couramment utilisé .

2.2, basé sur le type d'adresse IP

Basé sur l'adresse IP: utilisez des noms de domaine différents pour chaque hôte virtuel, et leurs adresses IP correspondantes sont également différentes. Cette méthode nécessite plusieurs interfaces réseau pour le serveur, de sorte que l'application n'est pas très étendue.

2.3. Type basé sur le port

Basé sur le port: cette méthode n'utilise pas les noms de domaine et les adresses IP pour distinguer différents contenus de site, mais utilise différents numéros de port TCP, les utilisateurs doivent donc spécifier le numéro de port en même temps pour accéder à différents sites virtuels.

Remarque : étant donné que différents types d'hôtes virtuels ont des mécanismes de distinction différents, il est recommandé de ne pas les utiliser en même temps pour éviter toute confusion.

Deuxièmement, créez un hôte Web virtuel basé sur un domaine

1. Fournir une résolution de nom de domaine

Tout d'abord, vous devez enregistrer le nom de domaine de chaque site Web virtuel auprès du fournisseur de services DNS, de sorte que lorsque vous visitez l'un des sites Web virtuels, vous finirez par visiter la même adresse IP - l'adresse IP du serveur qui prend en charge tous les sites Web virtuels.

Supposons que nous ayons deux noms de domaine www.wlm.com et www.wat.com. L'adresse IP correspondante est 20.0.0.58. Nous pouvons utiliser deux noms de domaine comme deux sites Web virtuels servis par apache et correspondre à une adresse IP 20.0.0.58 en même temps.

2. Préparez des documents Web

Préparez des répertoires de sites Web et des documents Web pour chaque hôte Web virtuel. Fournissez un fichier de page d'accueil contenant un contenu différent pour chaque hôte Web virtuel.

[root@localhost ~]# mkdir -p /var/www/html/wlmcom
[root@localhost ~]# mkdir -p /var/www/html/watcom
[root@localhost opt]# echo "<h1>www.wlm  web1</h1>" > /var/www/html/wlm/index.html
[root@localhost opt]# echo "<h1>www.wat  web2</h1>" > /var/www/html/wat/index.html
3. Modifiez le fichier de configuration

Dans le fichier de configuration principal du service Apache, si vous souhaitez activer un hôte Web virtuel basé sur un domaine, vous devez généralement modifier les deux zones suivantes

  • Configuration de la zone hôte virtuelle: utilisez la configuration de la zone <Adresse d'écoute VirtualHost> ... pour établir un contenu de configuration indépendant pour chaque hôte Web virtuel. Il doit inclure au moins les éléments de configuration du nom du site Web de l'hôte virtuel et du répertoire racine de la page Web; d'autres éléments de configuration (tels que la gestion des boîtes aux lettres, les journaux d'accès, etc.) peuvent être ajoutés en fonction des besoins réels.

  • Configuration des autorisations pour accéder au répertoire racine de la page Web: Utilisez la configuration régionale <Emplacement du répertoire du répertoire> ... pour définir les autorisations d'accès au répertoire du site Web de chaque hôte Web virtuel, par exemple pour permettre à quiconque d'y accéder. L'accès au répertoire peut hériter des autorisations d'autorisation de son répertoire parent, vous pouvez donc directement autoriser les autorisations d'accès pour le dossier parent afin de simplifier la configuration. Lorsque le nombre d'hôtes Web virtuels est important, il est recommandé d'utiliser un fichier de configuration d'hôte virtuel distinct.

[root@localhost opt]# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf 
.......                  //省略部分信息
  //可在此位置手动创建独立的访问目录权限                            
<VirtualHost *:80>           //设置域名 www.wlm.com 虚拟站点区域
    DocumentRoot "/var/www/html/wlm"    //服务访问域名网页的路径
    ServerName www.wlm.com      //服务访问的域名
    ErrorLog "logs/www.wlm.com.error_log"      //错误访问日志存放路径
    CustomLog "logs/www.wel.com.access_log" common      //访问日志存放路径
        <Directory "/var/www/html">        //设置目录访问权限
        Require all granted              //允许所有访问
        </Directory>
</VirtualHost>

<VirtualHost *:80>    //设置域名 www.wlm.com 虚拟站点区域。
    DocumentRoot "/var/www/html/wat"    //服务访问域名网页的路径
    ServerName www.wat.com    //服务访问的域名
    ErrorLog "logs/www.wat.com.error_log"     //错误访问日志存放路径
    CustomLog "logs/www.wat.com.access_log" common   //访问日志存放路径
        <Directory "/var/www/html">     //设置目录访问权限
        Require all granted   //允许所有访问
        </Directory>
</VirtualHost>

Chargez ensuite ces configurations en activant "Inclure conf / extra / httpd-vhosts.conf" dans le fichier httpd.conf. Cela peut minimiser les modifications apportées au fichier httpd.conf et faciliter la gestion du contenu de la configuration.

[root@localhost opt]# vim /usr/local/httpd/conf/httpd.conf 
.......                  //省略部分信息
Include conf/extra/httpd-vhosts.conf //加载独立的配置文件,将行首的 "#" 删除
.......                  //省略部分信息
[root@localhost opt]# systemctl restart httpd   //重启httpd服务
4. Le client accède à l'hôte Web virtuel

Tout d'abord, ajoutez le mappage du nom de domaine DNS dans le fichier d'hôtes du client, puis dans le navigateur du client, utilisez le nom du site Web pour visiter respectivement différents noms de domaine, et vous pouvez voir le contenu de la page Web précédemment définie, ce qui signifie basé sur le nom de domaine virtuel La configuration de l'hôte est réussie. Si vous ne pouvez pas voir ce résultat, vous devez vérifier les fichiers de la page d'accueil des deux sites, suivre le processus ci-dessus pour résoudre les erreurs de configuration et, si nécessaire, vider le cache du navigateur et visiter à nouveau.

Linux的hosts文件路径为:/etc/hosts  
20.0.0.58    www.wlm.com      //添加内容
20.0.0.58    www.wat.com
window的hosts文件路径为:C:\Windows\System32\drivers\etc\hosts
20.0.0.58    www.wlm.com         //添加内容
20.0.0.58    www.wat.com

Le résultat du test montre:
la page de test dont le nom de domaine est www.wlm.com est la page de test
Insérez la description de l'image ici
de www.wat.com
Insérez la description de l'image ici

Troisièmement, créez un hôte Web virtuel basé sur l'adresse IP

Le processus de construction d'une adresse IP ou d'un hôte virtuel basé sur un port est similaire à celui d'un hôte virtuel basé sur un domaine. Vous devez également fournir une résolution de nom de domaine, préparer des documents Web, ajuster la configuration httpd, redémarrer le service httpd, puis accéder à l'hôte virtuel dans le client pour le test. . La principale différence est que différents types d'hôtes virtuels ont des contenus de configuration légèrement différents dans le fichier httpd.conf.

Pour les hôtes virtuels basés sur les adresses IP, chaque hôte Web virtuel utilise une adresse IP différente, mais tous fournissent des services de navigation Web via le même serveur httpd. Pour cette raison, les serveurs utilisés pour prendre en charge ces hôtes Web virtuels ont également besoin d'un grand nombre d'interfaces réseau, ce qui est souvent peu pratique dans les applications pratiques. Par conséquent, les hôtes virtuels basés sur l'adresse IP ne sont pas aussi largement utilisés que les hôtes virtuels basés sur un domaine.

Modifier la configuration du fichier httpd.conf

[root@localhost opt]# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf 
.......                  //省略部分信息
  //可在此位置手动创建独立的访问目录权限                            
<VirtualHost 20.0.0.58>           //基于20.0.0.58IP的虚拟web主机配置
    DocumentRoot "/var/www/html/wlm"    //服务访问域名网页的路径
    ServerName www.wlm.com      //服务访问的域名
    ErrorLog "logs/www.wlm.com.error_log"      //错误访问日志存放路径
    CustomLog "logs/www.wel.com.access_log" common      //访问日志存放路径
        <Directory "/var/www/html">        //设置目录访问权限
        Require all granted              //允许所有访问
        </Directory>
</VirtualHost>

<VirtualHost 20.0.0.55>    //基于20.0.0.55的虚拟web主机的配置
    DocumentRoot "/var/www/html/wat"    //服务访问域名网页的路径
    ServerName www.wat.com    //服务访问的域名
    ErrorLog "logs/www.wat.com.error_log"     //错误访问日志存放路径
    CustomLog "logs/www.wat.com.access_log" common   //访问日志存放路径
        <Directory "/var/www/html">     //设置目录访问权限
        Require all granted   //允许所有访问
        </Directory>
</VirtualHost>
[root@localhost opt]# vim /usr/local/httpd/conf/httpd.conf 
.......                  //省略部分信息
Include conf/extra/httpd-vhosts.conf //加载独立的配置文件,将行首的 "#" 删除
.......                  //省略部分信息
[root@localhost opt]# systemctl restart httpd   //重启httpd服务

Hôte Web virtuel basé sur IP20.0.0.58 Hôte Web virtuel
Insérez la description de l'image ici
basé sur 20.0.0.50
Insérez la description de l'image ici

Quatrièmement, créez un hôte Web virtuel basé sur un port

Les hôtes virtuels basés sur les ports ne sont généralement utilisés que pour le même site Web. Les noms de sites Web et les adresses IP sont souvent les mêmes, mais différents ports TCP sont utilisés pour fournir un accès de service à différents contenus Web. Lorsque vous accédez à un serveur Web avec un port autre que 80 dans le navigateur, vous devez indiquer clairement le numéro de port du serveur, par exemple en visitant http://www.wat.com:55/ ou http: //20.0.0.58.55/.

[root@localhost opt]# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf 
<VirtualHost 20.0.0.58:80>    //基于80端口的虚拟web主机配置
    DocumentRoot "/var/www/html/wlm"
    ServerName www.wlm.com
    ErrorLog "logs/www.wlm.com.error_log"
    CustomLog "logs/www.wel.com.access_log" common
        <Directory "/var/www/html">
        Require all granted
        </Directory>
</VirtualHost>

<VirtualHost 20.0.0.58:55>   //基于55端口的web主机配置
    DocumentRoot "/var/www/html/wat"
    ServerName www.wat.com
    ErrorLog "logs/www.wat.com.error_log"
    CustomLog "logs/www.wat.com.access_log" common
        <Directory "/var/www/html">
        Require all granted
        </Directory>
</VirtualHost>

Lors de la configuration d'un hôte Web virtuel basé sur le port, vous devez spécifier le numéro de port TCP à surveiller via plusieurs éléments de configuration d'écoute et vous devez modifier le fichier de configuration httpd.conf.

[root@localhost ~]# vim /usr/local/httpd/conf/httpd.conf   //编辑配置文件
// 使用vim编辑器末行模式/搜索Listen 80服务器默认监听的端口,在其下一行添加配置
.......                  //省略部分信息
Listen 80
Listen 55     //添加监听55端口
.......                  //省略部分信息
Include conf/extra/httpd-vhosts.conf //加载独立的配置文件,将行首的 "#" 删除
.......                  //省略部分信息
[root@localhost opt]# systemctl restart httpd   //重启httpd服务

Visitez la machine virtuelle Web basée sur le port 80
Insérez la description de l'image ici

Visitez la machine virtuelle Web basée sur le port 55. Remarque: Je recommande personnellement un hôte Web virtuel basé sur
Insérez la description de l'image ici
un domaine pour l'environnement de production

Je suppose que tu aimes

Origine blog.csdn.net/wulimingde/article/details/108431078
conseillé
Classement