web服务之httpd及其新特性

概述

http协议及httpd的一些特性,是学习web服务需要掌握的一些基础知识,接下来让我们进一步了解httpd相关功能的配置,本文讲解的web服务之httpd新特性及其虚拟主机,访问控制及https等功能的配置。

httpd之基本特性

实验环境介绍

开始之前,先介绍一下httpd在CentOS6.8版本及文件:

版本:httpd-2.2.27(centos7默认为2.4以上的版本)

主配置文件:

/etc/httpd/conf/httpd.conf

其他配置文件如虚拟主机及其ssl、虚拟主机、欢迎页等

/etc/httpd/conf.d/*.conf

服务脚本配置文件:

/etc/sysconfig/httpd

服务脚本:

/etc/init.d/httpd

日志文件:

/var/log/httpd/access_log

/var/log/httpd/error_log

站点根目录:

/var/www/html

httpd之MPM多道处理模块:

prefork:一个进程相应一个请求

worker:一个进程生成多个线程,一个线程相应一个请求

event:一个进程生成多个线程,一个线程相应多个请求,事件驱动,主要的目的是在于实现单线程相应多个请求

httpd之主配置文件详解:

①监听套接字

    Listen [ip:]port

此指令可以出现多次,用于指定监听的多个不同的套接字

Listen 80

Listen 10.1.294.95:8080

②Keep Alive持久连接

KeepAlive On|Off

KeepAliveTimeout 15

MaxKeepAliveRequests 100

③MPM

httpd-2.2不支持同时编译多个MPM模块,所以只能编译选定使用哪个,centos6的rpm包为此专门提供了三个应用程序文件,httpd prefork,worker,event,分别用于实现不同的MPM机制的支持,修改/etc/sysconfig/httpd即可。

④定义中心配置文件

DocumentRoot "/var/www/html":其为站点的根目录的URL,在配置虚拟主机时,此项需注释。

⑤站点访问控制常见机制

<Directory "">

Options Indexes FollowSymLink #允许跟踪符号链接文件所指向的源文件,Options Indexes FollowSymLinks :当没有index.html 主页时会显示其目录下的所有站点文件,在线上使用这个选项很危险,一般使用Options -Indexes FollowSynLinks

AllowOverride None

Order allow,deny

Allow from all

</Directory>

⑥定义站点的主页

DirectoryIndex index.html index.html.var

⑦定义路径别名

Alias /alias "/path/to/somewhere"

意味着访问http://server_ip/alias/时,其页面文件来自于/path/to/somefile/的路径

⑧日志设置

日志类别:访问日志和错误日志

错误日志:ErrorLog logs/error_log

访问日志:CustomLog logs/access_log combine

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

LogFormat "%h %l %u %t \"%r\" %>s %b" common

LogFormat "%{Referer}i -> %U" referer

LogFormat "%{User-agent}i" agent

⑨status页面

开启:LoadModule status_modules/mod_status.so

开启:server-status允许所有的主机

<Location /server-status>

SetHandler server-status

Order deny,allow

Allow from all

</Location>

⑩配置虚拟主机,主要分类为基于ip,基于域名,基于端口,或则ip和端口混用,本实验之前博客有过详解写介绍不在加以说明。user/group,指定以哪个用户身份来运行httpd进程,User  daemon   Group  daemon

httpd之ssl

实验环境介绍

实验介绍:本实验主要是给web服务加上安全套接字协议,应用web服务之httpd实现 https

https配置

案例要求:

证书颁发服务器:10.1.249.94

web服务器:10.1.249.95

要求web服务器的www.a.com站点使用https

配置httpd工作于https

要配置https首先要安装mod_ssl模块,请自行安装

为服证书颁发服务端生成私钥,并为其提供证书

1.生成私钥、

(umask 077;openssl genrsa -out private/cakey.pem 2048)

2.自签

openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650

3.创建所需的文件

touch serial crlnumber index.txt

4.在web服务器上生成密码

mkdir /etc/httpd/ssl

cd /etc/httpd/ssl

(umask 077;openssl genrsa -out httpd.key 2048)

5.生成证书申请请求

opensll req -new -key httpd.key -out httpd.csr

6.将申请请求发给CA,CA签署证书

openssl ca -in /tmp/httpd.csr -out /etc/pki/CA/newcerts/httpd.crt -days 365

7.将已签署的证书申请发给web服务

scp /etc/pki/CA/newcerts/httpd.crt  [email protected]/etc/httpd/ssl/

8.在浏览器导入证书输入https://www.a.com测试,即可

时间: 2024-11-10 11:38:36

web服务之httpd及其新特性的相关文章

Linux之Web服务(2)Httpd服务配置之一

Linux之Web服务(2)Httpd服务配置之一 Apache HTTP Server Apache HTTP 服务器,简称Apache,是非常留下的Web服务器软件.通常和脚步语言比如PHP,数据库MySQL一起工作,合成为LAMP栈(Linux, Apache, MySQL, PHP). 当然流行的Web服务器还有nigix,但是nigix虽然轻量级很稳定,但是功能并不如Apache HTTP功能丰富,并且现在的Apache HTTP还支持模块化功能,及可以开发自己的功能模块并加入到此We

Linux之Web服务(2)Httpd服务配置之四

Linux之Web服务(2)Httpd服务配置之四 前言 接上一篇的虚拟主机,本片主要介绍虚拟主机的一些搭建和部署,本篇通过一个具体的案例来显示虚拟主机的作用和特性. 案例功能介绍: (1) 准备DNS解析3个域名或者添加/etc/hostst/3条主机名IP档案,解决域名解析 (2) 基于主机名实现三个虚拟主机 (3) 每虚拟主机使用独立的访问日志和错误日志 (4) 在第二个虚拟主机上提供/status: (5) 在第三个虚拟主机提供路径别名/bbs,访问其它文件系统路径: (6) 第三个虚拟

Web服务介绍 & httpd安装

Web简介 什么是Web WWW:World Wide Web,万维网 英国人TimBerners-Lee在1989年欧洲共同体的一个大型科研机构工作时发明的 Web是一种超文本信息系统,其主要实现方式是超文本连接 Web特点 1.Web页面的图形化和易于链接 2.Web与操作系统.浏览器平台无关 3.分布式 4.动态习惯 5.交互性 Web工作原理 HTTP(Hyper Text Transfer Protocol,超文本传输协议):提供了访问超文本信息的功能,是Web浏览器和Web服务器之间

Linux之Web服务(2)Httpd服务配置之三

Linux之Web服务(2)Httpd服务配置之三 前言 默认安装的Httpd服务一般只有默认的一个DocumentRoot节点配置,及一个站点文档资源存放根目录,但是在生产环境中需要有多种分类的资源,比如用于外部访问和内部访问,又或者是资源本身类型,比如分别用来存放一些文档.图片.单项加密算法文件等,为了更好分配站点管理的资源,Httpd服务提供了VirtualHost及虚拟主机的配置,可以在一个Httpd服务下模拟进行部署多个站点,这样不同的站点进行不同的配置,更方便进行分布式管理. Vir

Linux之Web服务(2)Httpd服务配置之二

Linux之Web服务(2)Httpd服务配置之二 前言 在上一篇通过一些简单的案例或说明来介绍了部分关于Httpd2.4中httpd.conf配置文件中的配置选项及对应的功能.主要是对访问控制和在处理对指定目录或文件进行访问控制的一些安全问题性的处理.但是一直没有提到访问控制的具体讲解,本篇列出访问控制的具体使用选项和功能,以及其它高级配置. 1.Httpd2.4 文档访问授权具体参数 前提:文档访问授权选项配置只适合在以下标签中生效: <Directory >  <FIles>

第二十天 TCP 及socket通信原理、http协议及web服务、httpd核心配置详解

一.TCP及socket通信原理详解 二.http协议及web服务原理(一) 三.http协议及web服务原理(二) 四.httpd核心配置详解 1.tcp.udp是一种传输协议,实现进程地址标记,套接字是一个虚拟设备,用来表明主机上的某个进程      众所周知:0-1023:管理员才有权限使用,永久地分配给某应用使用(由IANA分配)      注册端口:1024-41951:只有一部分被注册,分配原则上非特别严格.      动态端口或私有端口:41952-65535:由内核分配临时端口,

高性能Web服务之Httpd+Tomcat实现负债均衡反向代理实现

httpd作为前端的反向代理,那有两种选择,一是利用"proxy_module"这个代理框架下的"proxy_http_module"与"proxy_ajp_module"这两个代理模块,这两个代理模块是独自工作的,二是利用"mod_jk"模块实现httpd的反向代理至后端tomcat. 下面通过以下架构部署httpd+tomcat实现方向代理: 反向代理系统架构规划如下: 服务器角色 服务器IP httpd eth0:172

web服务之httpd虚拟主机配置你造吗?

一.httpd虚拟主机的分类 1.基于ip地址的虚拟主机 2.基于端口的虚拟主机 3.基于域名的虚拟主机 二.配置虚拟主机 实验环境:centos6,使用Yum安装的httpd服务 准备工作:注释中心主机的DocumentRoot站点根目录,创建/etc/httpd/conf.d/vhosts.conf配置文件,创建实验需的站点目录: mkdir -pv /www/{a.com,b.net,c.org}/htdocs,每次修改配合文件时检查语法:httpd -t   重启服务:service h

高性能Web服务之Httpd负载均衡Tomcat实现Session Sticky及Session Cluster

Httpd负载均衡Tomcat实现Session Sticky及Session Cluster架构如下所示: 实现过程如下: 配置tomcat服务(tomcat1\tomcat2) (1)安装JDK # rpm -ivh jdk-7u9-linux-x64.rpm  --安装JDK后生成的文件 # cd /usr/java/ ; ll total 4 lrwxrwxrwx  1 root root   16 Sep 27 09:09 default -> /usr/java/latest drw