盘点Linux运维常用工具(一)-web篇之httpd

2019/04/10 10:10
阅读数 19

#前言:想把自己学到用到的各种服务进行分类归档起来,于是就写了盘点Linux运维常用工具,Linux方面使用到的web应用服务有httpd(apache)、nginx、tomcat、lighttpd,先了解httpd服务

 

#httpd服务

1.简单概述

1、HTTP 协议,全称Hyper Text Transfer Protocol,中文名超文本传输协议
2、HTTP的重要应用之一是WWW服务,设置HTTP协议最初是提供一种发布和接受HTML页面的方法
3、www全称world wide web(万维网)
4、HTTP协议的WWW服务应用的默认端口为80,https加密的端口为443
5、http协议位于OSI模型中第七层应用层
6、官网:www.apache.org

 

#特点

12.2版本非常稳定强大,2.4版本性能更高
2、prefork模式取消了进程创建开销
3、高并发时消耗系统资源相对多
4、支持扩展

 

#HTTP协议版本

#版本:0.9, 1.0, 1.1, 2.03.0
    0.9: 最初的版本,仅支持请求方法方式get
    1.0:增加了请求方式POST和HEAD
    1.1:引入了持久连接
    2.0:增加双工模式(即不仅客户端能够同时发送多个请求,服务端也能同时处理多个请求)
             也增加了服务器推送功能
    3.0:基于UDP实现,基于UDP的多路复用,加密认证的报文

 

#HTTP状态码

是用来表示web服务器响应http请求状态的数字代码

#状态码可分为5大类

 

 #生产场景下的状态码及其对应的作用

 

#apache的工作模式

prefork:多进程,每个请求用一个进程响应
worker:多线程,一个进程可以生成多个线程,每个线程响应一个请求
event(http2.4之后添加):基于异步I/O模型,一个进程或线程,每个进程或线程响应多个用户

 

2.相关术语

#http请求方式

用于告诉web服务器端需要执行哪些具体的动作:包括获取指定web页面,提交内容到服务器、删除服务器上资源文件等

#常用的HTTP请求方法

 

#http报文

#http报名可分为两种

请求报文:从客户端发往web服务器的http报文
响应报文:从web服务器发往web客户端的报文

 

 

#请求报文

请求报文包括: 请求行,请求头部,空行,请求报文主体
    
    请求行
        请求行是请求报文的第一行,用来说明客户端想要做什么。
        内容由请求方法字段、URL字段和HTTP协议版本字段组成
        
    请求头部
        请求头部由关键字/值对组成,使用:作为分隔符,
        请求头部的作用是通过客户端把请求的相关信息告诉给服务器
        
    请求报文主体
        请求报文主体包括了要发送给web服务器的数据信息,请求报文主体不会应用于HTTP的get命令方法

#响应报文

响应报文包括:状态行,响应头部,空行,响应报文主体

  起始行:
   也叫状态行,用来说明服务器响应客户端请求的状况
   一般为协议及版本号、数字状态码、状态情况

 响应头部:和请求报文类似,起始行的后面一般有若干个头部字段

  响应报文主体:响应报文主体中装载了要返回给客户端的数据

 

#URL介绍

全称uniform resource location(统一资源定位符),也称为网页地址(网址)

#URL的组成

 由三部分组成: 第一部分是协议,如:http
             第二部分是主机资源服务器IP地址或域名
             第三部分是主机资源的具体地址            

 

#URI介绍

全称uniform resource identifier(统一资源标识符),用于标识某一互联网资源名称的字符串
URL是URI命名机制的一个子集

  

#静态网页介绍

在网站设计中,纯碎的HTML格式的网页通常称为静态网页

#常见的静态扩展名

纯文本类程序或文件,如.htm 、.html 、.xml 、.shtml 、.js 、.css 等。
图片类文件或数据文档,如.j pg 、.gif、.png 、.bmp 、.txt 、.doc 、.ppt 等。
视频类流媒体文件,如.mp4 、.swf、.avi 、.wmv 、. ftv


#动态网页介绍

动态网页和静态网页是相对的,以.php .js .asp等形式结尾的

#动态网页的特点

1、网页扩展名后缀常见为:.asp .aspx .php 
2、一般以数据库技术为基础
3、实现更多的功能
4、网址中有? &标志性的符号

 

#伪静态网页介绍

伪静态就是通过一些技术(如rewrite)把动态网页的URL地址伪装成静态网页URL地址,但实际还是动态网页

 

#网站流量度量术语

IP
        Internet protocol。指独立IP数,独立IP数是指不同ip地址的计算机访问网站时被计的总次数

PV
      (访问量),即page view(页面浏览),即页面浏览或单击量,不管客户端是否相同,也不管ip是否相同,用户只要访问
          网站页面就会被计算为PV,一次计一个PV

UV
         unique visitor(独立访客),同一个客户端访问网站被记为一个访客,一天内相同的客户端访问同一个网站只会被计
         一次UV
         UV一般是以客户端cookie等技术作为统计依据

#网站并发连接理解

网站服务器在单位时间内能够处理的最大连接数

 

3.安装方法

#1.使用yum进行安装

yum install httpd -y

#启动服务

[root@ctos3 ~]# systemctl start httpd

 

#查看httpd服务的目录结构

[root@ctos3 ~]# tree /etc/httpd/
/etc/httpd/
├── conf
│   ├── httpd.conf  #主配置文件
│   └── magic
├── conf.d
│   ├── autoindex.conf
│   ├── README
│   ├── userdir.conf
│   └── welcome.conf
├── conf.modules.d   #模块目录
│   ├── 00-base.conf
│   ├── 00-dav.conf
│   ├── 00-lua.conf
│   ├── 00-mpm.conf
│   ├── 00-proxy.conf
│   ├── 00-systemd.conf
│   └── 01-cgi.conf
├── logs -> ../../var/log/httpd  #日志
├── modules -> ../../usr/lib64/httpd/modules
└── run -> /run/httpd

 

#2.编译安装apache2.4

#1.安装相关的包

yum groupinstall "Development Tools" "Development Libraries" -y   #安装相关开发工具包
yum install gcc gcc-c++  openssl-devel bzip2 -y   #安装依赖包

 

#2.编译apache依赖的相关包

[root@ctos3 ~]# ls -l | grep -E  "apr|apr|pcre|httpd"
-rw-r--r--  1 root root 1031613 May 30  2016 apr-1.5.2.tar.gz
-rw-r--r--  1 root root  694427 May 30  2016 apr-util-1.5.4.tar.bz2
-rw-r--r--  1 root root 5101005 May 30  2016 httpd-2.4.16.tar.bz2
-rw-r--r--  1 root root 1557603 May 30  2016 pcre-8.37.tar.bz2

#提示:我这边是将包下载下来了再使用rz(lrzsz包名)上传的

#依赖包下载地址

apr和apr-utils:http://apr.apache.org/
prce:http://pcre.org

#2.1.编译apr

[root@ctos3 ~]# tar xf apr-1.5.2.tar.gz -C /usr/local/src/
[root@ctos3 ~]# cd !$
cd /usr/local/src/
[root@ctos3 src]# cd apr-1.5.2/
[root@ctos3 apr-1.5.2]# ./configure  --prefix=/usr/local/apr
[root@ctos3 apr-1.5.2]# make -j 2 &&  make install

#提示:-j参数:使用CPU来进行编译,加快速度

#2.2.编译apr-util

[root@ctos3 ~]# yum install -y bzip2 
[root@ctos3 ~]# tar xf apr-util-1.5.4.tar.bz2 -C /usr/local/src/
[root@ctos3 ~]# cd !$
cd /usr/local/src/
[root@ctos3 src]# cd apr-util-1.5.4/
[root@ctos3 apr-util-1.5.4]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[root@ctos3 apr-util-1.5.4]# make -j 2 &&  make install

#2.3.编译pcre

[root@ctos3 ~]# tar xf pcre-8.37.tar.bz2 -C /usr/local/src
[root@ctos3 ~]# cd !$
cd /usr/local/src
[root@ctos3 src]# cd pcre-8.37/
[root@ctos3 pcre-8.37]# ./configure --prefix=/usr/local/pcre
[root@ctos3 pcre-8.37]# make -j 2 && make install

 

#3.编译安装apache

[root@ctos3 ~]# tar xf httpd-2.4.16.tar.bz2 -C /usr/local/src/
[root@ctos3 ~]# cd !$
cd /usr/local/src/
[root@ctos3 src]# cd httpd-2.4.16/
[root@ctos3 httpd-2.4.16]# ./configure --prefix=/usr/local/apache2.4 --enable-so --enable-rewrite --enable-ssl --with-pcre=/usr/local/pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mpms-shared=all --with-mpm=event
[root@ctos3 httpd-2.4.16]# make -j 2 && make install

#编写apache的启动脚本

[root@ctos3 ~]# cp /usr/local/apache2.4/bin/apachectl  /etc/init.d/apache2.4

#添加
[root@ctos3 ~]# vim /etc/init.d/apache2.4 
[root@ctos3 ~]# head -n 3 /etc/init.d/apache2.4 
#!/bin/sh
#chkconfig:2345 64 36   #启动级别的服务,2345指哪些级别启动,64是开启顺序,36是关闭注释
#description:Apache2.4.16 start script   #添加了这两个字段就可以使用chkconfig命令控制

[root@ctos3 ~]# /etc/init.d/apache2.4 start #启动服务

[root@ctos3 ~]# chkconfig apache2.4 on  #添加开机自启
[root@ctos3 ~]# ps aux | grep apache     #查看apache的进程
[root@ctos3 ~]# ss -untpl | grep 80        #查看端口

  

原文出处:https://www.cnblogs.com/guoke-boy/p/12449503.html

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部