Apache默认虚拟主机

xiaoxiao2021-02-28  50

Apache默认虚拟主机

一台服务器可以访问多个网站,每个网站都是一个虚拟主机 概念:域名(主机名)、DNS、解析域名、hosts 任何一个域名解析到这台机器,都可以访问的虚拟主机就是默认虚拟主机

Apache的主配置文件/usr/local/apache2.4/conf/httpd.conf 下,网站的文件在

DocumentRoot "/usr/local/apache2.4/htdocs" <Directory "/usr/local/apache2.4/htdocs">

主机域名在

ServerName www.example.com:80

但是,这样就有一个问题,一个配置了LAMP的linux服务器,只能跑一个网站。 要想跑多个网站,只能关闭主配置文件下的主机域名和网站文件后,做多个虚拟主机,而多个虚拟主机中的第一个被默认为默认虚拟主机。

在主配置文件下打开虚拟主机配置文件,主配置文件就失效了

在主配置文件下打开虚拟主机配置文件

[root@shuai-01 ~]# vim /usr/local/apache2.4/conf/httpd.conf # Virtual hosts Include conf/extra/httpd-vhosts.conf

虚拟主机配置文件(/usr/local/apache2.4/conf/extra/httpd-vhosts.conf )

打开虚拟主机配置文件就能配置多个网站域名

[root@shuai-01 ~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf <VirtualHost *:80> ServerAdmin webmaster@dummy-host.example.com DocumentRoot "/usr/local/apache2.4/docs/dummy-host.example.com" ServerName dummy-host.example.com ServerAlias www.dummy-host.example.com ErrorLog "logs/dummy-host.example.com-error_log" CustomLog "logs/dummy-host.example.com-access_log" common </VirtualHost> <VirtualHost *:80> ServerAdmin webmaster@dummy-host2.example.com DocumentRoot "/usr/local/apache2.4/docs/dummy-host2.example.com" ServerName dummy-host2.example.com ErrorLog "logs/dummy-host2.example.com-error_log" CustomLog "logs/dummy-host2.example.com-access_log" common </VirtualHost>

每一个VirtualHost都表示一个虚拟主机,每一个虚拟主机都对应一个域名

对虚拟主机配置文件做配置:

<VirtualHost *:80> ServerAdmin webmaster@dummy-host.example.com //管理员的邮箱 DocumentRoot "/usr/local/apache2.4/docs/dummy-host.example.com" //网站根目录 ServerName dummy-host.example.com //网站的域名 ServerAlias www.dummy-host.example.com //网站的别名 ErrorLog "logs/dummy-host.example.com-error_log" //错误日志 CustomLog "logs/dummy-host.example.com-access_log" common //访问日志 </VirtualHost>

定义一个网站的追主要的两个参数DocumentRoot,ServerName

写虚拟主机配置文件:

<VirtualHost *:80> DocumentRoot "/data/wwwroot/abc.com" ServerName abc.com ServerAlias www.abc.com www.123.com ErrorLog "logs/abc.com-error_log" CustomLog "logs/abc.com-access_log" common </VirtualHost> <VirtualHost *:80> DocumentRoot "/data/wwwroot/111.com" ServerName 111.com ServerAlias www.111.com www.example.com ErrorLog "logs/111.com-error_log" CustomLog "logs/111.com-access_log" common </VirtualHost>

创建文件

[root@shuai-01 ~]# mkdir /data/wwwroot/ [root@shuai-01 ~]# mkdir /data/wwwroot/abc.com [root@shuai-01 ~]# mkdir /data/wwwroot/111.com

编写网页文件

[root@shuai-01 ~]# vim /data/wwwroot/abc.com/index.php <?php echo "111.com"; ?> [root@shuai-01 ~]# vim /data/wwwroot/111.com/index.php <?php echo "111.com"; ?>

检查配置文件有没有出错

[root@shuai-01 ~]# /usr/local/apache2.4/bin/apachectl -t Syntax OK

重新加载配置文件

[root@shuai-01 ~]# /usr/local/apache2.4/bin/apachectl graceful

命令curl

作用:打开网页

选项:

-x 指定IP地址

[root@shuai-01 ~]# curl -x192.168.176.135:80 abc.com abc.com
转载请注明原文地址: https://www.6miu.com/read-2620192.html

最新回复(0)