apache虚拟主机配置



如果有多个域名,想实现不同的域名访问不同的网站,以及不同的端口对应不同的网站,都可以使用apache的虚拟主机配置来实现。

  1. 基于ip地址

 

一个ip对应一个网站。例如实现如下操作:

新建一个192.168.52.132的网站,文件存放在/www/132,内容显示为This is 192.168.52.132

新建一个192.168.52.133的网站,文件存放在/www/133,内容显示为This is 192.168.52.133

  • 增加网站html文件

      在根目录下新建www目录,以下再建132 133目录

      Echo  This is 192.168.52.132  > /www/132/index.html

      Echo  This is 192.168.52.133  > /www/133/index.html

  • 首先配置网络:

修改当前ip地址及增加一个ip地址,并开启网络

nmcliconnection modify eno16777736 ipv4.addresses 192.168.52.132/24

nmcliconnection modify eno16777736 +ipv4.addresses 192.168.52.133/24

nmcliconnection up eno16777736 

 

 

  • 修改配置文件

 

在主配置文件/etc/httpd/conf/httpd.conf最后有如下配置:

ServerRoot"/etc/httpd"

IncludeOptional conf.d/*.conf

作用是是配置文件包含/etc/httpd/conf.d  底下所有以.conf 结尾的文件

因此可将虚拟主机文件都放在此文件目录下,便于区分与维护

 

apache提供了个模板可以复制过来修改即可

cp /usr/share/doc/httpd-2.4.6/httpd-vhosts.conf  /etc/httpd/conf.d/vhosts.conf

 

配置文件示例

 

<Directory "/www">                               使网站文件可访问

    AllowOverride None

    Options None

    Require all granted

</Directory>

 

<VirtualHost 192.168.52.132:80>                         指定虚拟主机对应的ip及端口

    ServerAdminwebmaster@dummy-host.example.com            管理员邮箱

    DocumentRoot"/www/132"                                                         网站根目录

    ServerName 192.168.52.132                                                         

    ErrorLog"/var/log/httpd/132-error_log"                                   错误日志位置

    CustomLog"/var/log/httpd/132-access_log" common            访问日志位置

</VirtualHost>

 

<VirtualHost192.168.52.133:80>

    ServerAdminwebmaster@dummy-host2.example.com

    DocumentRoot "/www/133"

    ServerName  192.168.53.133

    ErrorLog"/var/log/httpd/133-error_log"

    CustomLog"/var/log/httpd/133-access_log" common

</VirtualHost>

 

 

 

 

.       基于端口

基于不同端口访问不同网站

1、新建一个网站,文件存放在/www/80/,内容显示为This is port 80.

2、新建一个网站,文件存放在/www/10000/,内容显示为This is port 10000.

添加配置:

vim/etc/httpd/conf.d/vhost.conf

 

LISTEN 10000

<VirtualHost192.168.200.150:10000>

    ServerAdminwebmaster@dummy-host2.example.com

    DocumentRoot "/www/10000"

    ServerName  192.168.200.150:10000

    ErrorLog"/var/log/httpd/dummy-host2.example.com-error_log"

    CustomLog"/var/log/httpd/dummy-host2.example.com access_log" common

</VirtualHost>

 

.   基于域名

 

例如实现以下操作:

1、新建一个网站,域名为www.haha.com,同时可通过www1.haha.com访问,文件存放在/www/haha目录,网页内容为This is www.haha.com

2、新建一个网站,域名为www.xixi.com,文件存放在/www/xixi目录,网页内容为This is www.xixi.com

window下添加如下指令:在windowshosts文件中添加以下内容,IP地址按照自己主机的情况填写 window—system32-

Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联"数据库",当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。

 

 

192.168.200.150 www.haha.com www1.haha.com

192.168.200.100 www.xixi.com

<VirtualHost192.168.200.150:80>

    ServerAdminwebmaster@dummy-host2.example.com

    DocumentRoot "/www/haha"

    ServerName  www.haha.com

    ServerAlias www1.haha.com

    ErrorLog"/var/log/httpd/dummy-host2.example.com-error_log"

    CustomLog"/var/log/httpd/dummy-host2.example.com-access_log" common

</VirtualHost>

<VirtualHost192.168.200.100:80>

    ServerAdminwebmaster@dummy-host.example.com

    DocumentRoot "/www/xixi"

    ServerName www.xixi.com

    ErrorLog"/var/log/httpd/dummy-host.example.com-error_log"

    CustomLog"/var/log/httpd/dummy-host.example.com-access_log" common

</Virtualhost>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值