Apache多站点配置

Apache多站点配置也就是虚拟主机配置
虚拟主机 (Virtual Host) 是在同一台机器搭建属于不同域名或者基于不同 IP 的多个网站服务的技术. 可以为运行在同一物理机器上的各个网站指配不同的 IP 和端口, 也可让多个网站拥有不同的域名。

1.安装apache

#yum install -y httpd

2.准备本地域名解析

#vim /etc/hosts

127.0.0.1   server.example.com
127.0.0.1   wwww.example.com

测试能否联通
#ping wwww.example.com
#ping server.example.com

ps:若网络接口上绑定多个IP,把127.0.0.1换乘对应IP即可

3.网站文件存放的根目录

#mkdir /var/www/virt1
#mkdir /var/www/virt2
vim /var/www/virt1/index.html

<!DOCTYPE HTML>
<html>
    <body>
        <head>
            <title>Hello world</title>
        </head>
        <p><b>Hello world!</b></p>
    </body>
</html>

#cp /var/www/virt1/index.html /var/www/virt2

4..配置

#vim /etc/httpd/conf/httpd.conf
在结尾加入

NameVirtualHost *:80      #一定要打开
<VirtualHOST *:80>
    ServerName server.example.com    #是网站域名
    DocumentRoot /var/www/virt1      #是网站文件存放的根目录
    <Directory "/var/www/virt1">
        order allow,deny
        allow from localhost
        allow from 127.0.0.1
        allow from server.example.com
        allow from 192.168.173.0/24
    </Directory>
</VirtualHost>
<VirtualHost *:80>
    ServerName wwww.example.com
    DocumentRoot /var/www/virt2
    <Directory "/var/www/virt2">
        AllowOverride AuthConfig          #加入网页认证机制
        AuthType basic                           #认证类型
        AuthName "Authentication Required"
        AuthUserFile /var/www/virt2/.passwd   #指定用户认证文件位置
        Require valid-user
    </Directory>
</VirtualHost>

Order定义处理Allow和Deny的顺序,Allow、Deny则针对名字或IP进行访问控制设置,缺省最后一个生效。

5.创建合法用户

#htppasswd -cm /var/www/virt2/.passwd test
#htpasswd -m /var/www/virt2/.passwd user

6.Selinux与iptables

#chcon –reference=/var/www/html /var/www/virt1
#chcon –reference=/var/www/html /var/www/virt2
#getsebool -a | grep http

iptables

#iptables -A INPUT -p tcp –dport 80 -j ACCEPT
#iptables -A OUTPUT -p tcp –sport 80 -j ACCEPT

7.验证

在浏览器里分别输入server.example.com和wwww.example.com
在输入wwww.example.com时需要验证:
Apache多站点配置_第1张图片

你可能感兴趣的:(apache,虚拟主机)