Apache常用虚拟主机配置方法解析

1、apache服务器安装与配置

yum install httpd -y

systemctl start httpd &&systemctl enable httpd

systemctl stop firewalld

setenforce 0 //设置selinux安全级别为premise重启会失效.

本机windows浏览器测试虚拟机ip地址(一定要关闭防火墙),看到以下界面代表启动http成功。

2、apache2配置文件

安装好httpd后会自动生成/etc/httpd目录

主要配置文件:conf/httpd.conf

3、基于IP地址(服务器需要多个公网IP地址)

www.lyn1.com----192.168.100.135
www.lyn2.com----192.168.100.136

(1)给服务器另外再绑定一个IP地址

(2)在/etc/httpd/conf.d目录中增加一个站点文件lyn1.conf

也可以在/etc/httpd/conf/httpd.conf 直接配置,httpd.conf文件会自动导入/etc/httpd/conf.d中文件,为了方便我们直接写到/etc/httpd/conf.d文件夹下

mkdir /mnt/lyn1

cd /etc/httpd/conf.d

vi lyn1.conf

<VirtualHost 192.168.100.135>  //本机ip地址
DocumentRoot /mnt/lyn1/     //网络数据目录
ServerName www.lyn1.com     //网站服务器的域名<Directory /mnt/lyn1/ >     //网站数据目录的权限
AllowOverride None       //不允许重写
Require all granted       //允许所有访问请求
</Directory>
</VirtualHost>

(3)在shiyan1.com对应网站的发布目录下增加网页文件index.html

vi /mnt/lyn1/index.html

<html>
<head>
<title>lyn1</title>
</head>
<body>
<h1>lyn1</h1>
this is the www.lyn1.com website
</body>
</html>

(4)在/etc/httpd/conf.d目录中增加一个站点文件lyn2.conf

mkdir /mnt/lyn1

cd /etc/httpd/conf.d

vi lyn1.conf

<VirtualHost 192.168.100.136>  //本机另一个ip地址
DocumentRoot /mnt/lyn2/     //网络数据目录
ServerName www.lyn2.com     //网站服务器的域名
<Directory /mnt/lyn2/ >     //网站数据目录的权限
AllowOverride None       //不允许重写
Require all granted       //允许所有访问请求
</Directory>
</VirtualHost>

vi /mnt/lyn2/index.html

<html>
<head>
<title>lyn2</title>
</head>
<body>
<h1>lyn2</h1>
this is the www.lyn2.com website
</body>
</html>

(6)重启Apache服务器,并使用浏览器进行验证

systemctl restart httpd

4、配置基于端口号的虚拟主机

www.lyn1.com----192.168.100.135:80
www.lyn2.com----192.168.100.135:81

(1)在主配置文件/etc/httpd/conf/httpd.conf文件中增加监听端口81

#vi /etc/httpd/conf/httpd.conf
Listen 80
Listen 81

(2)修改/etc/httpd/conf.d/lyn1.conf文件:

<VirtualHost 192.168.100.135:80>
ServerName www.lyn1.com
DocumentRoot /var/www/html/lyn1/
<Directory /var/www/html/lyn1/ >
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

(3)修改/etc/httpd/conf.d/shiyan2.conf文件:

<VirtualHost 192.168.100.135:81>
ServerName www.lyn2.com
DocumentRoot /var/www/html/lyn2/
<Directory /var/www/html/lyn2/ >
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

(4)重启Apache服务器,并使用浏览器进行验证

systemctl restart httpd

5、配置基于主机名的虚拟机

www.lyn1.com----192.168.100.135:80
www.lyn2.com----192.168.100.135:80

(1)注册DNS(配置DNS服务器并实现正常解析)、临时测试时可以使用修改/etc/hosts方法,此处采用修改hosts方法

#vi /etc/hosts

192.168.100.135 www.lyn1.com

192.168.100.135 www.lyn2.com

(2)在主配置文件/etc/httpd/conf.d/lyn1.conf文件中

<VirtualHost *:80>
ServerName www.lyn1.com
DocumentRoot /var/www/html/lyn1/
<Directory /var/www/html/lyn1/ >
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

(3)在主配置文件/etc/httpd/conf.d/lyn2.conf文件中

<VirtualHost *:81>
ServerName www.lyn2.com
DocumentRoot /var/www/html/lyn2/
<Directory /var/www/html/lyn2/ >
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

(4)重启apache2服务器并进行验证

systemctl restart httpd

[root@lyn html]# curl www.lyn1.com

[root@lyn html]# curl www.lyn2.com

windows下访问网站要向C:\Windows\System32\drivers\etc\hosts文件中追加下面两行

192.168.100.135 www.lyn1.com

192.168.100.135 www.lyn2.com

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • ubuntu系统下apache配置虚拟主机及反向代理详解

    前言 自己有两个域名blogsir.com.cn 和 s7star.cn ,都绑定在了我的腾讯云主机上,还有七星网络安全攻防平台的搭建,这里记录下我搭建虚拟主机和反向代理的过程,下面来一起看看详细的介绍: 配置虚拟主机 $ sudo vi /etc/apache2/sites-available/000-default.conf #DocumentRoot /var/www/html ##注释掉该行 $ cat /etc/apache2/sites-available/000-default.c

  • Ubuntu 16.04与Apache虚拟主机配置的步骤详解

    前言 众所周知在window下,Apache的配置文件是httpd.conf,但在Linux下安装了Apache后发现其配置并不像window下那么简单,Linux下Apache将各个设置项分在了不同的配置文件中,想想也是有很大的理由的,这样子可以使用户在开发过程中自由的搭配其不同的功能模块,更好的提高效率,不过,如果不事先了解Apache,可能在配置时蒙圈. Ubuntu中Apache的配置文件是//etc/apache2/apache2.conf.Apache在启动时会找到这个文件并自动读取

  • Apache配置虚拟目录和多主机头的方法

    了解一下根目录和虚拟目录的关系: 安装过apache之后打开httpd.conf文件会发现DocumentRoot默认设置的应该是apache安装目录中的htdocs文件夹.然后你的网页就可以放大这个htdocs文件夹中测试,例你在里面放了一个1.PHP,可以输入http://127.0.0.1/1.php进行测试.这个DocumentRoot后面的路径就是apache的根目录.有时候我们不想将自己的网站放到这里,例如我想要放到F:/MyPHP中来运行,那么就可以修改DocumentRoot为F

  • win10 apache配置虚拟主机后localhost无法使用的解决方法

    win10系统配置虚拟主机 1.用记事本或Sublime Text打开httpd.conf ctrl + f 搜索httpd-vhosts.conf 将 #Include conf/extra/httpd-vhosts.conf 的#号去掉保存 2.打开extra/httpd-vhosts.conf 添加如下内容: <VirtualHost *:80> ServerAdmin webmaster@youremail.com DocumentRoot "E:/your_web_root

  • Apache中Virtual Host虚拟主机配置及rewrite参数说明

    Virtual Host配置过程 这里例子中我们的路径为这样 DocumentRoot: /home/jb51 /sites/demo.jb51.net ServerName:demo.jb51.net 1.进入apache虚拟主机设置目录 cd /etc/apache2/sites-available 2.创建文件demo.jb51.net <VirtualHost *:80> ServerAdmin webmaster@localhost DirectoryIndex index.html

  • Apache 配置多端口 多虚拟主机 局域网访问示例

    一.在\wamp\bin\apache\Apache2.4.4\conf\extra\httpd-vhosts.conf 修改如下 复制代码 代码如下: NameVirtualHost *:80 <VirtualHost *:80> DocumentRoot "E:/website/pxsj" ServerName host7.com ServerAlias 192.168.1.116 <Directory "E:/website/pxsj">

  • apache虚拟主机的配置指南

    一.检查apache虚拟主机模块 apache要配置虚拟主机,就需要先查看apache是否编译vhost_alias_module模块.当然apache默认是已经编译该模块的,我们可以通过以下命令查看是否已经编译模块,如下: /usr/local/apache2/bin/apachectl -M 二.开启apache虚拟主机功能 要开启apache虚拟主机功能,我们需要修改apache配置文件http.conf.打开apache的安装目录,找到httpd.conf文件,去掉Include con

  • 如何配置apache虚拟主机的实例小结

    1.基于ip地址的虚拟主机 复制代码 代码如下: Listen 80<VirtualHost 172.20.30.40>    DocumentRoot /home/httpd/html1    ServerName www.ok1.com    ErrorLog /usr/local/apache/logs/error1_log    CustomLog /usr/local/apache/logs/access1_log combined</VirtualHost><Vi

  • 本地机apache配置基于域名的虚拟主机详解

    1.打开apache的httpd.conf文件,找到# Virtual hosts#Include conf/extra/httpd-vhosts.conf这一段把Include conf/extra/httpd-vhosts.conf前面的"#"去掉. 2.修改位于(win7)c:/windows/system32/drivers/etc/目录下的hosts文件增加一段:127.0.0.1    x.acme.com(你用来访问的域名) 3.我用的是wamp包,所以到c:/wamp/

  • Apache常用虚拟主机配置方法解析

    1.apache服务器安装与配置 yum install httpd -y systemctl start httpd &&systemctl enable httpd systemctl stop firewalld setenforce 0 //设置selinux安全级别为premise重启会失效. 本机windows浏览器测试虚拟机ip地址(一定要关闭防火墙),看到以下界面代表启动http成功. 2.apache2配置文件 安装好httpd后会自动生成/etc/httpd目录 主要配

  • linux apache下虚拟主机配置方法

    假设VPS的IP是58.130.17.168,有两个域名指向该IP,分别是domain1.com, domain2.com, 修改/etc/httpd/conf/httpd.conf,在文件的最后加入: ServerName 58.130.17.168 NameVirtualHost 58.130.17.168 <VirtualHost 58.130.17.168> ServerName domain1.com DocumentRoot /var/www/domain1.com <Dir

  • windows apache多端口虚拟主机配置方法

    1.打开httpd.conf,查找Listen:80,在下面一行加入Listen:8080:2.查找#Include conf/extra/httpd-vhosts.conf,将此行前面的#去掉:3.打开httpd.conf文件目录下面的extra文件夹下面的httpd-vhosts.conf文件:4.查找NameVirtualHost *:80,在下面一行增加NameVirtualHost *:8080:5.复制httpd-vhosts.conf文件最下面的如下代码,并且在下面粘贴一份: 复制

  • apache的多站点虚拟主机配置方法

    例:主机IP是:192.168.1.1 你的主机上有三个域名: www.a.com    网页文件放在E:\web\www\1 www.b.com    网页文件放在E:\web\www\2 www.c.com    网页文件放在E:\web\www\3 在apache的httpd.conf中加入 #设置不同的域名到不同的目录 NameVirtualHost 192.168.1.1 <VirtualHost 192.168.1.1>   DocumentRoot "E:\web\ww

  • Apache 多站点虚拟主机配置方法

    修改配置文件 conf/httpd.conf 1.加入下面两句 NameVirtualHost *:80 Include conf/vhosts 2.在conf目录中建立vhosts目录 然后在 vhosts 目录下面建立相应的站点配置文件 如建立 hhj.jb51.net.conf 文件 内容: 复制代码 代码如下: <VirtualHost *:80> ServerAdmin hhj@live.it ServerName www.hhj.jb51.net ServerAlias hhj.j

  • Apache实现本地建立泛域名虚拟主机的方法

    本文讲述了Apache实现本地建立泛域名虚拟主机的方法.分享给大家供大家参考,具体如下: 在本地建立泛域名虚拟主机,可以修改Apache的安装目录下的conf/httpd.conf,如下: <VirtualHost *:80> ServerName auciou.com ServerAlias *.auciou.com DocumentRoot F:/site/auciou </VirtualHost> 重启Apache,就可以在本地同时使用auciou.com和xxx.aucio

  • apache虚拟主机配置: 二级目录访问跳转到其他根文件夹

    访问 http://www.abc.com/course/ ,实际访问的是:d:/www/moodle/index.PHP <VirtualHost *:80> ServerAdmin webmaster@abc.com DocumentRoot "d:/www/abc" ServerName www.abc.com ##ServerAlias Alias /course "d:/www/moodle" <Directory "d:/ww

  • Apache源码安装和虚拟主机配置的教程详解

    源码安装Apache 1.上传Apache源码安装所需软件包 2.安装: 安装顺序 apr->apr-util->pcre->httpd 安装编译环境 yum -y install gcc gcc-c++ apr 编译安装 tar xzf apr-1.4.6.tar.gz cd apr-1.4.6 ./configure --prefix=/usr/local/apr make && make install apr-util 编译安装 tar xzf apr-util-

  • apache虚拟主机配置的三种方式(小结)

    目录 一.基于IP 二.基于主机名 三.基于端口 记事本打开httpd.conf文件 ,该文件在apache的目录下,如: D:\AppServ\Apache2.2\conf,修改如下两处: LoadModule vhost_alias_module modules/mod_vhost_alias.so //去掉前面的#,意思是启用apache的虚拟主机功能,第203行 Include conf/extra/httpd-vhosts.conf //去掉#的意思是从httpd-vhosts.con

随机推荐