文章目录

  • 一、Apache概述
    • 1.Apache起源
    • 2.Apache特点
    • 3.版本差异
    • 4.编译安装优点
    • 5.Apache依赖软件包
    • 6.Apache配置选项:
    • 7.Apache主要子目录的用途
  • 二、搭建Apache环境
  • 三、构建虚拟主机
    • 1.Httpd服务支持的虚拟主机类型三种:
    • 1.1 基于域名
    • 1.2 基于IP
    • 1.3 基于端口

一、Apache概述

1.Apache起源

  • 源于A Patchy Server,著名的开源Web服务软件
  • 1995年时,发布Apache服务程序的1.0版本
  • 由Apache软件基金会(ASF)负责维护
  • 最新的名称为“Apache HTTP Server”

2.Apache特点

  • 开放源代码,跨平台应用
  • 支持多种网页编程语言
  • 模块化设计,运行稳定,良好的安全性

3.版本差异

1.x

  • 目前最高版本是1.3,运行稳定
  • 向下兼容性较好,但缺乏一些较新的功能

2.x

  • 目前最高版本是2.4
  • 具有更多的功能特性
  • 与1.X相比,配置管理风格存在较大差异

4.编译安装优点

  • 具有较大的自由度,功能可定制
  • 可及时获得最新的软件版本
  • 普遍适用于大多数Linux版本,便于移植使用

5.Apache依赖软件包

  • 1.apr:为上层的应用程序提供一个可以跨越多操作系统平台使用的底层支持接口库。早期apache为了能够处理各种不同的系统平台的时候调用不同的处理函数,现在apache将通用函数独立出来发展成apr项目(可以跨越多操作系统平台使用的底层支持接口库)
  • 2.apr-util:完整的apr开发包包含三个:apr,apr-util,apr-iconv。都是为了完成一个功能就是为上层应用提供运行库,只不过和apr提供的数据结果和接口库不一样而已。(完整的apr开发包包含三个:apr,apr-util,apr-iconv。都是为了为上层应用提供运行库)
  • 3.pcre-devel:为了支持正则表达式
  • 4.expat-devel;上一个C语言开发的,用来解析XML文档的开发库,主要作用是搜索它的的文档,识别文件指定的位置,调用该部分相应的处理程序,将文件输送到解析器,将文件分割成多个片断,分段装到内存中(搜索它的的文档,识别文件指定的位置)
  • 5.perl:内部集成了正则表达式和第三方代码库CPAN。和前面的pcre-devel支持的正则表达式不一样。(内部集成了正则表达式和第三方代码库CPAN)

6.Apache配置选项:

  • -prefix:指定apache程序安装到哪个目录下
  • -enable-so:启用动态加载模块支持,使httpd具备进一步扩展功能的能力
  • -enable-rewrite:启用网页地址重写功能,用于网站优化机目录迁移
  • -enable-charset-lite:启用字符集支持,以便支持使用字符集编码的网页
  • -enable-cgi:启用CGI脚本程序支持,便于扩展网站的应用访问能力

7.Apache主要子目录的用途

  • /usr/local/httpd/bin:存放httpd服务的各种可执行程序文件
  • /usr/local/httpd/conf:存放httpd服务的各种配置文件
  • /usr/local/httpd/htdocs:存放网页文档,包括默认首页文件index.html
  • /usr/local/httpd/logs:存放httpd服务的日志文件
  • /usr/local/httpd/modules:存放httpd服务的各种模块文件
  • /usr/local/httpd/cgi-bin:存放各种CGI程序文件

二、搭建Apache环境

1.安装解压软件包

1.解压缩

tar zvxf apr-1.6.2.tar.gz
tar zvxf apr-util-1.6.0.tar.gz
tar jxvf httpd-2.4.29.tar.bz2

2.剪切这两个文件,拒绝部分依赖关系

[root@server1 ~]# mv apr-1.6.2 httpd-2.4.29/srclib/apr
[root@server1 ~]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util

3.安装依赖包

[root@server1 ~]# yum -y install gcc gcc-c++ make pcre-devel expat-devel perl

4.配置添加功能模块

[root@server2 ~]# cd httpd-2.4.29/
[root@server1 httpd-2.4.29]# ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi

5.编译安装

make   &&   make install
[root@server1 ~]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
[root@server1 ~]# vi /etc/init.d/httpd
添加:#chkconfig:45 87 31#description:Apache HTTP Server


6.用chkconfig去管理httpd

[root@server1 ~]# chkconfig --add httpd
[root@server1 ~]# chkconfig --list
[root@server1 ~]# systemctl enable httpd

7.建立软链接

[root@server1 ~]# ln -s /usr/local/httpd/bin/* /usr/bin/
[root@server1 ~]# ln -s /usr/local/httpd/conf/httpd.conf  /etc/

8.网站与域名捆绑

vi /etc/httpd.conf
修改ServerName www.nb.com:80

9.检查语法的两种方法

[root@server1 ~]# apachectl   -t
[root@server1 ~]# httpd   -t


10.将This ls Fa 重定向输入到index.html中

 echo "<h1>This ls Fa</h1>" > /usr/local/httpd/htdocs/index.html

11.重启

[root@server1 ~]# systemctl restart httpd         #重启服务
[root@server1 ~]# netstat -anpt | grep httpd       #查看httpd服务端口状态
[root@server1 ~]# curl http://localhost       #测试访问

测试

三、构建虚拟主机

虚拟Web 主机指的是在同一台服务器中运行多个Web站点,其中每一个站点实际上并不独立占用整个服务器,因此被称为“虚拟”Web 主机。

1.Httpd服务支持的虚拟主机类型三种:

基于域名:为每个虚拟主机使用不同的域名,但是其对应的IP地址是相同的。
基于IP地址: 为每个虚拟主机使用不同的域名,且各自对应的IP地址也不相同。
基于端口:这种方式并不使用域名、IP地址来区分不同的站点内容,而是使用了不同的TCP端口号。

1.1 基于域名

[root@server1 ~]# mkdir /opt/aa
[root@server1 ~]# mkdir /opt/bb
[root@server1 ~]# cd  /opt/aa
[root@server1 aa]# vi index.html<html><body><h1>aa</h1></body></html>

[root@server1 ~]# cd  /opt/bb
[root@server1 aa]# vi index.html<html><body><h1>bb</h1></body></html>

vi /etc/httpd.conf


#需自己创建extra目录,再配置一份虚拟主机的apache网站配置

[root@server1 ~]# vi /usr/local/httpd/conf/extra/httpd-vhosts.conf

[root@server2 ~]# vi /etc/hosts


测试:
www.aa.com
www.bb.com

1.2 基于IP

1.设置虚拟ip

ifconfig ens33:1 192.168.1.90/24
ip   addr          #查看

添加虚拟ip

[root@server2 ~]# vi /usr/local/httpd/conf/extra/httpd-vhosts.conf

systemctl restart httpd    #重启

测试:
192.168.1.90

1.3 基于端口

[root@server1 ~]# vi /usr/local/httpd/conf/extra/httpd-vhosts.conf


增加监听端口

vi /etc/httpd.conf

[root@server2 ~]# systemctl restart httpd
[root@server2 ~]# netstat -anpt | grep httpd


测试
192.168.1.90.8080

搭建虚拟Web主机(基于域名、IP、端口)相关推荐

  1. 虚拟Web主机(基于域名配置,基于ip地址,基于端口)

    文章目录 虚拟Web主机 httpd支持的虚拟主机类型 基于域名的虚拟主机 基于IP地址的虚拟主机 基于端口的蓄力主机 基于域名的虚拟主机 修改DNS主配置文件 设置区域配置文件 添加区域数据配置文件 ...

  2. Nginx网站服务与虚拟Web主机(域名、IP、端口)

    文章目录 一.Nginx概述 1.什么是Lginx 2.Nginx工作原理 3.Nginx 的模块从功能上分为如下三类 4.Nginx的模块从结构上分为核心模块.基础模块和第三方模块 二.搭建Ngin ...

  3. Linux中的的虚拟WEB主机的几点总结

    Linux中的虚拟WEB主机几点注意与备忘 听着钢琴曲,第一次开始写博客. 其实有点疲惫,因为上课了一整天,晚上还搭建了一遍服务.但是难以掩住第一次写博客的心情. 还原虚拟机的命令:rht-vmctl ...

  4. apache服务构建虚拟web主机

    apache服务构建虚拟web主机 一.虚拟web主机的类型 1.虚拟 Web 主机介绍 2.apache服务支持的三种虚拟web主机类型 2.1.基于域名的类型 2.2.基于IP地址的类型 2.3. ...

  5. 虚拟web主机搭建 ---基于域名、基于IP、基于端口

    构建虚拟web主机 一.基于域名 1.配置网卡 虚拟机1 虚拟机2 2.重启网卡并查看 虚拟机1 虚拟机2 3.创建目录并挂载,切换到光驱目录并下载bind软件包 在这里插入图片描述 4.关闭防火墙和 ...

  6. Web服务器群集--Nginx网站服务(运行控制,访问状态统计,基于授权和客户端的访问控制,基于域名,端口,IP的虚拟web主机访问)

    文章目录 前言 一:Nginx服务基础 1.1:Nginx概述 1.2:Nginx编译安装(过程) 1.3:运行控制(实验过程) 1.4:配置文件nginx.conf 1.5:Nginx的访问状态统计 ...

  7. 构建虚拟web主机(基于域名,IP,端口)

    文章目录 构建虚拟 web主机简介 1.基于域名 2.基于IP 3.基于端口 构建虚拟 web主机简介 虚拟 Web 主机指的是在同一台服务器中运行多个 Web 站点,其中的每一个站点实际上并不独立占 ...

  8. 虚拟服务器 端口管理,Apache服务配置虚拟主机(基于域名、端口、IP地址)与简单访问权限管理...

    虚拟Web主机 在同一台物理服务器中运行多个Web站点,其中每一一个站点并不独立占用一台真正的计算机. httpd支持的虚拟主机类型 基于域名的虚拟主机 基于IP地址的虚拟主机 基于端口的虚拟主机 构 ...

  9. Centos7.6下构建虚拟主机实验(基于域名、端口及IP地址)

    文章目录 一.构建虚拟主机概述 二.实验环境及详细步骤 2.1 基于域名 2.2 基于端口 2.3 基于IP 一.构建虚拟主机概述 虚拟Web主机 在同一台服务器中运行多个Web站点,其中每一个站点并 ...

最新文章

  1. 【Flutter】ExpansionTile 可折叠列表
  2. 今日arXiv精选 | 13 篇 ICCV 2021 最新论文
  3. linux 配置快速查看
  4. 状态压缩DP(大佬写的很好,转来看)
  5. Ubuntu 16.04+.Net Core+Docker+Nginx安装部署
  6. zookeeper注意几点
  7. python3新式类_python新式类和旧式类区别
  8. 活动目录应用篇一:使用windows server 2008 backup备份AD是的账户权限问题
  9. python 哪些项目_一份2018年Python开源项目Top100清单!
  10. 基于SSM的医院药品管理系统答辩PPT模板
  11. 集成产品开发(IPD)初探
  12. 陷阱:在 WebApp 中谨防 Singleton 错误
  13. python加颜色_python输出带颜色字体实例方法
  14. Word中 Visio 图片到 LaTeX PDF
  15. 爬虫封号解决 -- Win10系统如何修改网卡的物理地址(MAC)
  16. ajax submit 文件上传,ajaxSubmit() 上传文件和进度条显示
  17. 我的大学 --- 郭天祥【3】
  18. html新浪短域名api,新浪短链接API接口示例
  19. 好男人都死到哪去了?
  20. BC3.1精简版win7/10下不兼容问题的解决

热门文章

  1. Java中文乱码特殊字符解决方案
  2. 深度学习之GPU环境配置
  3. python多线程数据交互_python 多线程 通信
  4. 捷信消费金融十年:巨轮转向,海阔天空
  5. URLDownloadToFile调用返回E_ABOR问题
  6. 原创 【我的OpenGL学习进阶之旅】介绍一下OpenGL ES的 遮挡查询
  7. Android开发收音机功能,基于Android系统的FM收音机功能的设计与实现
  8. 遥望星空WINDOWS证书生成导出加解密工具
  9. Css选择器(上) 让样式无孔不入
  10. hp打印机_smart tank 510 series