一、虚拟主机

虚拟主机是Apache提供的一个功能,通过虚拟主机拉雅在一台服务器上部署多个网站。虽然服务器的IP地址是相同的,但用户当用户使用不同的域名访问时,访问到的是不同的网站。

下面讲解Apache虚拟主机配置,当然,前提是你的CentOS已经安装并配置好了Apache服务器。

二、搭建虚拟主机

1.创建目录结构:

首先,我们需要创建一个目录结构,以保存网站数据,为访客提供服务。我们的文档根目录将被设置为在各个 /var/www/ 目录中,我们将这里为我们的每个虚拟主机创建一个目录。

在每个虚拟主机的目录中,我们将创建一个 public_html 用于存放实际文件。我们可以使用如下命令创建目录:

sudo mkdir -p /var/www/example.com/public_html

2.授予权限:

现在我们有了文件目录结构,但是它们是由 root 用户所拥有的,如果我们希望普通用户能在我们的网页目录修改文件,我们可以改变文件的权限

sudo chown -R $username:$usergroup /var/www/example.com/public_html

此外,还应修改权限以确保允许对一般Web目录及其中的所有文件和文件夹进行访问,以便正确提供页面。

sudo chmod -R  /var/www

3.为虚拟主机创建网站主页:

我们只是要作出网站主页 index.html 用以确保虚拟主机正确运行,创建一个新的 index.html 文件

vim /var/www/example.com/public_html/index.html

然后写入代码,这里我们只创建一个简单的页面:

<html>
<head>
<title>Welcome to example.com ! </title>
</head>
<body>
<h1>Success ! The example.com virtual host is working !</h1>
</body>
<html>

保存并关闭文件。

4. 创建新的虚拟主机文件:

虚拟主机文件是指定我们单独站点的配置,并指定 Apache Web 服务器如何响应各种域请求。

首先,我们将创建虚拟主机的存储目录,以及告知 Apache 虚拟主机准备好向访问者提供的目录。我们将创建两个目录,其中 sites-available 目录将保存我们所有的虚拟主机文件,而 sites-enabled 目录将举行符号链接。我们可以通过如下 bash 命令创建这两个目录:

sudo mkdir /etc/httpd/sites-available
sudo mkdir /etc/httpd/sites-enable

然后,我们要 Apache 查找虚拟主机 sites-enable 目录,为实现这一点,我们将编辑Apache的主配置文件 /etc/httpd/conf/httpd.conf 在文件的末尾添加:

IncludeOptional sites-enable/*.conf

接下来我们就可在存储目录中创建我们的拟主机文件了,使用root权限打开新文件:

sudo vim /etc/httpd/sites-available/example.com.conf

然后写入虚拟主机的配置:

<VirtualHost *:>    #监听端口为80
ServerName www.example.com
ServerAlias example.com
DocumentRoot /var/www/example.com/pubilc_html
ErrorLog /var/www/example.com/error.log
CustomLog /var/www/example.com/requests.log combined
</VirtualHost>

5.启用新的虚拟主机:

现在我们已经创建了虚拟主机文件,我们需要启用他们呢,以便Apache知道将它们提供给访问者。要做到这一点,我们可以创建一个符号链接在每个虚拟主机的sites-enable 目录:

sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-enable/example.com.conf

完成后,重新启动Apache以使这些更改生效:

sudo apachectl restart

6.设置本地主机文件爱(可选):

用于测试虚拟主机的功能,通过修改 /etc/hosts 文件,将所有对 www.example.com 的访问直接传递给我们:

#server_ip_address example.com www.example.com
127.0.0.1 example.com www.example.com

然后测试我们的虚拟主机,在浏览器中键入 http://www.example.com 顺利的话就能打开我们的测试的主页文件。

Centos7下配置Apache的虚拟主机的更多相关文章

  1. win7下配置Apache本地虚拟主机

    我们有时候从网上下载下来的php源码很多都是应用在网站根目录下的,而我们又想在本地先测试一遍确定没有问题了再上传空间,但一换到子目录下的时候因为路径问题,使得许多图片.内容都无法显示. 这个时候我们就 ...

  2. php配置虚拟主机的配置步骤(hosts、httpd.conf、vhosts.conf)1.配置本地的dns文件2.配置apache的主配置文件3.配置Apache的虚拟主机

    1.域名解析(DNS) 找到C:\Windows\System32\drivers\etc目录下的hosts文件,在里面进行添加对应的内容

  3. 利用主机域名配置Apache的虚拟主机功能

    利用主机域名配置Apache的虚拟主机功能,可以减轻服务器为每一个网站分配IP地址的压力.而且根据不同的主机域名可以输出不同的网页内容.要实现此项功能,可以通过修改/etc/host文件来强制定义IP ...

  4. ubuntu配置apache的虚拟主机

    ubuntu中apache的配置文件分散在几个文件中,/etc/apache2/apache2.conf将它们组织起来.这样设计有很多好处,这里就不在赘述了.进入正题: 1)配置文件在/etc/apa ...

  5. ubuntu下的apache的虚拟主机的配置

    ubuntu下的虚拟主机的配置相对window下的虚拟主机配置有些许不同. 对于要新建的虚拟主机,我们可以有如下几个步骤: 1.在/etc/apache2/sites-available/目录下新建一 ...

  6. wamp 环境下配置多台虚拟主机

    首先启动wamp,成功之后,单击图标,找到Apache服务器下的 httpd.conf ,直接打开 按下Ctrl+F键,在搜索框中搜索 Virtual hosts, 搜寻结果如下图: 3. 然后打开w ...

  7. 配置 Apache 的虚拟主机

    1.在host配置比如: 找到记事本以管理员的身份打开,然后文件->打开  C:\Windows\System32\drivers\etc    下面的hosts文件 127.0.0.1 www ...

  8. Ubuntu下通过apache建立虚拟主机

    一个搞前端交互的,总会遇到这样那样的,不需要写代码去解决的问题,怎么搞?答:只能去大海里捞,问题很明确但答案不一定靠谱,因为回答的人不用去考虑你是否会给自己系统搞崩溃. 那么我只能把自己经过验证的答案 ...

  9. mac 10.9.4下配置apache

    mac 10.9.x已经自带了apache,可按如下步骤开启: 1.启动 sudo apachectl start 启动后,访问 http://localhost/ 应该能看到"It wor ...

随机推荐

  1. 01、模拟ATM机界面程序

    一.概述 设计一个简单的模拟自动取款机ATM界面的程序,实现用户登录及取款等功能. 二.需求分析 (1)模拟自动取款机ATM界面,有常用功能. (2)主要功能包括;用户输入密码登录主界面.取款功能.取 ...

  2. .net core3.0 webapi搭建(一)

    一.创建WebApi项目: 生成项目之后,控制器默认生成了一个WeatherForecastController 我们可以直接启动项目,F5调试,默认进入WeatherForecastControll ...

  3. 复习babel

    对babel进行复习

  4. STM32学习笔记 —— 0.1 Keil5安装和DAP仿真下载器配置的相关问题与注意事项

    Keil5安装的注意事项 安装细节在此不再做过多赘述,主要介绍一下注意事项: 安装路径中不能有中文. ARM的Keil的路径不能与51的Keil的有冲突,必须将目录分开. Keil5中不会自动添加芯片 ...

  5. Gerrit评审代码流程注意事项

    Gerrit管理CR流程时要注意下面两大事项: (一)格式规范 这部分主要是根据公司或者团队的要求规范来撰写格式,这里不做统一介绍了:格式规范的宗旨是让修改的代码和业务需求能够匹配.可追溯. (二)评 ...

  6. Swaps and Inversions HDU - 6318 树状数组+离散化

    #include<iostream> #include<algorithm> #include<cstring> #include<cstdio> us ...

  7. nodejs安装管理工具nvm的安装和使用

    https://segmentfault.com/a/1190000007612011 Windows下载安装程序安装过程中,在 Set Node.js Symlink 这一步设置nodejs程序目录 ...

  8. Burp Suite Professional 针对APP抓包篡改数据提交【安全】

    Burp Suite 是用于攻击web 应用程序的集成平台,包含了许多工具.Burp Suite为这些工具设计了许多接口,以加快攻击应用程序的过程.所有工具都共享一个请求,并能处理对应的HTTP 消息 ...

  9. laravel框架用使用session 和cookie

    1.介绍 cookie 位于用户的计算机上,用来维护用户计算机中的信息,直到用户删除.比如我们在网页上登录某个软件时输入用户名及密码时如果保存为cookie,则每次我们访问的时候就不需要登录网站了.我 ...

  10. 2019-08-23 纪中NOIP模拟A组

    T1 [JZOJ2908] 矩阵乘法 题目描述 给你一个 N*N 的矩阵,不用算矩阵乘法,但是每次询问一个子矩形的第 K 小数. 数据范围 对于 $20\%$ 的数据,$N \leq 100$,$Q ...