Apache虚拟主机

简介:

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://juispan.blog.51cto.com/943137/1951872

    在一个Apache服务器上可以配置多个虚拟主机,实现一个服务器提供多站点服务,其实就是访问同一个服务器上的不同目录。Apache虚拟主机配置有3中方法:基于IP配置、基于域名配置和基于端口配置。下面将演示基于域名的虚拟主机。

1、编辑httpd.conf

1
2
[root@juispan ~]# vi /usr/local/apache2.4/conf/httpd.conf
Include conf/extra/httpd-vhosts.conf    ##启用httpd-vhosts.conf

2、编辑httpd-vhosts.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root@juispan ~]# vi /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>                      ##默认虚拟主机
    DocumentRoot "/data/www/abc.com"    ##网站根目录
    ServerName abc.com                  ##主域名
    ServerAlias  abc.net     ##域名别名 
    ErrorLog "logs/abc.com-error_log"            ##错误日志
    CustomLog "logs/abc.com-access_log" common   ##访问日志
</VirtualHost>
 
<VirtualHost *:80>
    DocumentRoot "/data/www/123.com"
    ServerName 123.com
    ErrorLog "logs/123.com-error_log"
    CustomLog "logs/123.com-access_log" common
</VirtualHost>

3、创建网站目录与文件

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@juispan ~]# mkdir /data/www
[root@juispan ~]# mkdir /data/www/abc.com
[root@juispan ~]# mkdir /data/www/123.com
[root@juispan ~]# cat /data/www/abc.com/index.php
<?php
echo "abc.com";
?>
[root@juispan ~]# cat /data/www/123.com/index.php
<?php
echo "123.com";
?>
[root@juispan ~]# chmod 755 /data/www/123.com/index.php
[root@juispan ~]# chmod 755 /data/www/abc.com/index.php

4、重新加载配置

1
2
3
[root@juispan ~]# /usr/local/apache2.4/bin/apachectl -t
Syntax OK
[root@juispan ~]# /usr/local/apache2.4/bin/apachectl graceful

5、测试虚拟主机效果

1
2
3
4
5
6
7
8
9
10
[root@juispan ~]# curl -x192.168.137.100:80 123.com
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /
on this server.<br />
</p>
</body></html>

测试发现没有权限,由于前面给index.php文件授权过,因此定位问题在httpd.conf。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@juispan ~]# vi /usr/local/apache2.4/conf/httpd.conf
<Directory />
    AllowOverride none
#   Require all denied          ##将该行注释掉
</Directory>
[root@juispan ~]# /usr/local/apache2.4/bin/apachectl graceful ##重新加载配置
[root@juispan ~]# curl -x192.168.137.100:80 123.com
123.com
[root@juispan ~]# curl -x192.168.137.100:80 abc.com      
abc.com
[root@juispan ~]# curl -x192.168.137.100:80   ##匹配别名主机 
abc.com
[root@juispan ~]# curl -x192.168.137.100:80 abcd.com   ##采用默认虚拟主机
abc.com







      本文转自rshare 51CTO博客,原文链接:http://blog.51cto.com/1364952/1952222,如需转载请自行联系原作者



相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
7月前
|
网络协议 网络安全 Apache
Apache 虚拟主机里的 ServerName 指令
Apache 虚拟主机里的 ServerName 指令
194 1
|
9月前
|
安全 网络安全 API
Apache虚拟主机的三种实现方式
Apache虚拟主机的三种实现方式
270 0
|
运维 测试技术 网络安全
Apache虚拟主机配置详细教程
Apache虚拟主机配置详细教程
558 0
Apache虚拟主机配置详细教程
|
8月前
|
域名解析 Linux 网络安全
Apache配置虚拟主机----基于域名的虚拟主机技术
Apache配置虚拟主机----基于域名的虚拟主机技术
160 0
|
Linux Apache Windows
Apache配置多个站点(虚拟主机)最简单的办法
包含配置文件 先找到你的Apache配置目录 Mac和Linux用户的配置目录一般是在: /etc/apach2 Windows用户的配置目录一般是和Apache安装目录在一起。
2098 0
|
7月前
|
域名解析 Apache PHP
PHP Apache - 多站点虚拟主机配置
PHP Apache - 多站点虚拟主机配置
291 0
|
监控 Linux 网络安全
Centos7下多种方式配置 Apache虚拟主机
Centos7下多种方式配置 Apache虚拟主机
949 1
Centos7下多种方式配置 Apache虚拟主机
|
Apache
给Apache虚拟主机增加端口的方法
给Apache虚拟主机增加端口的方法
105 0
|
网络协议 前端开发 Apache
Apache配置虚拟主机
Apache配置虚拟主机
246 0
Apache配置虚拟主机
|
安全 网络协议 网络安全
RH358配置Web服务器--使用 Apache HTTPD 对虚拟主机进行配置和故障排除
RH358配置Web服务器--使用 Apache HTTPD 对虚拟主机进行配置和故障排除
189 0
RH358配置Web服务器--使用 Apache HTTPD 对虚拟主机进行配置和故障排除

热门文章

最新文章

推荐镜像

更多