Linux系统下Apache2.4.6配置虚拟主机

实验环境:一台Linux虚拟机:CentOS 7.6,Apache 2.4.6,IP地址为192.168.80.100;一台客户端:Windows XP,IP地址为192.168.80.200。
虚拟主机:即可以在一台web服务器上运行多个网站。
实现方法有3种:
1、基于IP地址的虚拟主机,一台web服务器配置多个IP地址,一个IP地址对应一个网站。
2、基于端口的虚拟主机,一台web服务器只用一个IP地址提供web服务,开放多个端口,客户端访问web服务器时,需要在网址的后边加上相应的端口号。
3、基于域名的虚拟主机,每一个网站对应一个域名,输入不同的域名,访问不同的网站。
前提准备工作:安装Apache 2.4.6,这里就不演示了。由于是测试环境,最好关闭防火墙,CentOS 7系统默认装的是firewalld,禁用即可。还要关闭selinux,这一点很重要,很多情况下客户端访问不了web服务器,就是因为web服务器的selinux没有关闭造成的,这个禁用即可。
一、采用第一种方法配置虚拟主机(基于IP地址)
1.为系统配置多个IP地址,这里采用在一块网卡上配置多个IP地址。

2.查看IP配置。

3.编辑Apache主配置文件,/etc/httpd/conf/httpd.conf,确保第56行的“Include conf.modules.d/.conf”的设置项和最后一行的“IncludeOptional conf.d/.conf”设置项前边没有#,默认没有#,还需要将第95行的#去掉,不然执行httpd -t命令检查配置文件是否存在语法错误的时候,会有提示信息。



4.创建虚拟主机配置文件,创建3个虚拟主机,IP地址分别指向192.168.80.100,192.168.80.101,192.168.80.102。


这里需要注意的是每一个虚拟主机必须要加<Directory>...</Directory>控制语句,Apache2.2可以不加,但是Apache2.4.6一定要加,否则虚拟主机的web站点无法访问(这一点很关键)。
5.为每个虚拟主机创建访问页面,首先要创建/www/a.com,/www/b.net,/www/c.org三个目录,然后再创建每个虚拟主机的访问页面。

6.创建完每个虚拟主机的访问页面后,还需要将每个虚拟主机访问页面的文件名添加到web服务的主配置文件DirectoryIndex设置项中,如果不进行修改,则访问的是Apache的默认网页。因为我创建虚拟主机的访问页文件名都为index.html,这个文件名在主配置文件中DirectoryIndex设置项里默认存在,因此此处无需更改主配置文件。

7.执行httpd -t命令检查httpd服务配置文件是否存在语法错误。

出现Syntax OK,即配置文件无语法错误。
重启httpd服务。
8.打开客户端进行测试。
访问192.168.80.100

访问192.168.80.101

访问192.168.80.102

二、采用第二种方法配置虚拟主机(基于端口)
1.首先要填加httpd服务的监听端口,默认只监听80端口,这里再添加两个监听端口,808和8080,分别对应到第2个和第3个网站,这两个监听端口加到主配置文件中或虚拟主机配置文件中都行,这里我就添加在主配置文件中。

2.修改完主配置文件之后,还需要修改虚拟主机配置文件,修改内容如下:

3.修改完虚拟主机配置文件后,执行httpd -t命令,检查httpd服务配置文件是否存在语法错误。

无语法错误,重启httpd服务。
4.打开客户端进行测试。
访问第一个网站,192.168.80.100:80,默认的端口号可以不加。

访问第二个网站,192.168.80.100:808,不是默认的端口号,就必须要在IP地址后边加上端口号。

访问第三个网站,192.168.80.100:8080。

三、采用第三种方法配置虚拟主机(基于域名)
1.为三个网站准备三个域名,分别是www.a.com,www.b.net,www.c.org
2.修改虚拟主机配置文件。

3.重启服务。
4.客户端测试。
如果存在DNS服务器的话,可在DNS服务器上添加三条主机A记录。这里就直接修改客户端上的hosts文件

通过域名访问网站



需要注意的是:
1、若配置了虚拟主机,则不能访问原中心主机的网站。
2、若是基于域名创建的虚拟主机,用IP地址去访问网站,则默认会去访问第一个虚拟主机,此时可创建一个默认的虚拟主机,放在虚拟主机配置文件的首部。

原文地址:https://blog.51cto.com/13589013/2412645

时间: 2025-01-01 19:37:03

Linux系统下Apache2.4.6配置虚拟主机的相关文章

Linux系统下Apache2.4.17的安装过程

Linux系统下安装Apache Server2.4.17.还是先声明一下,Linux命令我不进行讲解,因为我不是讲Linux命令的.有需要注意的地方,我会上图,没什么值得的注意的地方,我就不上图了.还有就是怎样将压缩包上传到Linux系统中去,我不进行讲解,还是那句话:网上教程太多了!最后,确保你的Linux是连网的! 工具/原料 Linux系列系统 Apache Server2.4.17源码包 APR源码包 APR-Util源码包 PCRE源码包 方法/步骤 1 首先,秉承我一贯的风格,来看

Linux系统下FTP服务器的配置

FTP服务器的配置   一FTP服务器的安装 1)ftp服务器安装后生成的相关文件 /etc/logrotate.d/vsftpd  #实现日志滚动的程序 /etc/pam.d/vsftpd  #用户认证配置文件 /etc/rc.d/init.d/vsftpd  #服务脚本 /etc/vsftpd #配置文件所在目录 /etc/vsftpd/ftpusers  #控制哪些用户是否可登陆ftp /etc/vsftpd/user_list  #控制哪些用户是否可登陆ftp /etc/vsftpd/v

apache2.4.27配置虚拟主机

1:在httpd.conf中,把这行打开 Include conf/extra/httpd-vhosts.conf 2:进到conf/extra/里,修改httpd-vhosts.conf 原文件是这样的 <VirtualHost *:80> ServerAdmin [email protected] (邮箱) DocumentRoot "/web/www1" (发布目录) ServerName www.luo.com (域名) ServerAlias www.luo2.c

window下phpstudy的nginx配置虚拟主机

由于很长时间没有配置Apache,虽然说知道怎么配置nginx,但是还是花费了一些时间这次记下来下次直接用 在其他选项文件菜单中->打开配置文件->选择vhosts-conf nginx的话使用 server { listen 80; server_name 你的虚拟目录名称; root "你要操作的目录路径"; location / { index index.html index.htm index.php; #autoindex on; if ($request_fi

linux系统下安装python3及其配置

Linux下安装Python3.6和第三方库 linux一般自带python2,不要动它,使用python3运行python脚本就好,部分linux系统命令依赖目前的python2环境, 比如yum! 不要动现有的python2环境! 一.安装python3.6 安装依赖环境 命令:# yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdb

迅为iTOP-4412开发板Linux系统下如何配置wifi模块

精英版在 linux 下使用 wifi,需要进行下面的配置: 首先用户在拿到光盘资料以后查看下光盘里面的"linux"->"root_xxxxxxxx.tar.gz"文件,其中的 "xxxxxxxx" 代表linux系统的版本日期, 迅为提供的支持linux下wifi的系统版本是 "root_20150422.tar.gz" , 也就是 2015-04-22 以后的版本(包括 20150422)是支持 wifi 模块的.

Linux系统下目录文件配置

刚刚接触Linux,对于Linux系统下的目录配置进行了一些研究,为了避免以后误操作这些目录,建议大家还是记忆一下相关的配置! 总结 Linux 根目录主要配置 目录 文件配置内容 /bin 单用户维护模式下还能被操作的命令 /boot 开机会使用到的文件,包括Linux内核文件以及开机菜单与开机所需配置文件 /dev 设备以及设备接口文件,访问该目录下文件相当于访问某设备 - /dev下的重要文件:/dev/null,/dev/zero,/dev/tty /etc 系统主要的配置文件,比如账号

linux系统下php oracle扩展OCI8的安装与配置

linux系统下php oracle扩展OCI8的安装与配置 实现PHP程序访问oracle DB时间:2014.09.02写作者:刘群英(qunyingliu) 环境描述:apache版本,PHP版本,oracle DB版本,linux发行版本 RPM包安装oracle-instantclient客户端 源码编译安装oci8扩展 系统环境与php配置修改:ld.so.conf.d目录配置文件与php.ini中扩展字段信息修改 重启apache使修改生效 测试链接代码,确认配置成功 环境描述:

linux环境下配置虚拟主机域名

linux环境下面配置虚拟主机域名 第一步:在root目录下面(即根目录)ls(查看文件)cd进入etc目录find hosts文件vi hosts 打开hosts文件并进行编辑在打开的文件最下面添加:192.168.8.115 domain.com.cn 第二步:cd /usr/local/apache2/conf/  进入该目录下面ls  查看当前目录下面的所有文件以及目录vi httpd.conf 打开并编辑这个文件编辑:使用键盘上的PgDn将光标拉到最低端,然后添加如下代码: NameV