Linux入门——Linux上的HTTP服务及服务器的部署

  • Post author:
  • Post category:linux




HTTP服务




http协议


http:应用层协议(Hyper Text Transfer Protocol)超文本传输协议

作用:在客户端与网站服务器间传输网站代码,浏览器解析代码,展示网站数据



网站类型


静态网站

所有客户端访问看到的数据是一致的,由html语言开发


动态网站

一段程序代码, 根据用户传递参数不同,显示不同的结果



cookie / session会话


作用:使网站服务器可识别用户的身份


cookie


当客户端首次访问网站时,需要进行用户名、密码的认证;认证通过后,由服务器产生一串随机数发送给客户端,客户端会在 浏览器本地保存这串随机数,下次客户端再访问同样的网站时,会带着这串随机数,以让网站服务器识别客户端的身份, 这串随 机数称为cookie


session会话


将用户登录信息保存在服务器端



URL地址

统一资源定位符

格式:协议://主机名/IP地址/文件

ftp://192.168.32.75/software

https://www.baidu.com/

https://www.baidu.com/scl=3&tn=baidutop10&fr=top1000&wd=%E4%B8%AD%E5%9B%BD%E7%94%B7%E7%AF%AE%E9%81%AD%E9%80%86%E8%BD%AC&rsv_id



URI地址

统一资源标识符

/uc/login?ReturnUrl=http%3A%2F%2Fvip.jd.com%2Fhome.html



http协议版本、区别


http/0.9

只支持传输文本数据


http/1.0

引入MIME机制

MIME: 多用途互联网邮件扩展

作用:传输非文本数据(图片、视频、音频、动画)

缓存机制、加速网站的访问速度、服务端缓存、客户端缓存


http/1.1


长连接机制(keepalive)

:http协议,无状态的协议


长连接,连接复用

:客户端与服务器建立一条连接,在一条连接可以发送多个请求


管道机制

:在一条连接上,可以同时发送多送请求;客户端请求可同时发送,服务器响应数据还是按顺序发送的

增强缓存机制的管理:缓存超时时间、静态数据


http/2.0

在一条连接上,可以同时发送多个请求,也可以同时发送多个响应



http常见状态码

状态码 状态
200 成功响应
301 永久重定向
302 临时重定向
403 权限拒绝
404 文件未找到
502、503 服务器端错误



http常见请求资源的方法

GET 获取资源 POST 上传数据 HEAD 获取http的首部信息

[root@localhost ~]# curl -I www.baidu.com



HTTP的基本使用



软件安装及环境准备

1.关闭防火墙和selinux

root@localhost ~]#systemctl stop firewalld
root@localhost ~]#setenforce 0

2.安装HTTP软件

[root@localhost ~]# yum install httpd -y

3.启动HTTP服务

[root@localhost ~]# systemctl start httpd
[root@localhost ~]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.

4.使用浏览器测试HTTP界面

在这里插入图片描述



httpd相关文件目录


主配置文件

/etc/httpd/conf/httpd.conf


子配置文件

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


存放模块的路径

/etc/httpd/modules


加载模块的配置文件

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


日志文件

/var/log/httpd

error_log 错误日志

access_log 访问日志


默认网页目录

[root@localhost ~]# ls /var/www/html/

index.html



HTTP网站的默认网页配置

1.在HTTP的默认网页目录增加访问首页

[root@localhost ~]# cd /var/www/html/
[root@localhost html]# ls
[root@localhost html]# vim index.html
  1 <h1>
  2 My Main Page!!!
  3 <h1>                                                                                       
  4 

2.再次利用浏览器测试

在这里插入图片描述



设置HTTP网站域名

1.打开Windows下的域名解析文件

C:\Windows\System32\drivers\etc

2.对文件host进行修改

192.168.122.10 www.lll.com

3.测试

在这里插入图片描述



配置文件解析 — httpd.conf


指定httpd文件根目录

ServerRoot “/etc/httpd”


指定监听端口

Listen 192.168.183.10:80


加载子配置文件

Include conf.modules.d/*.conf


指定httpd子进程启动的用户

User www 2 Group www


指定管理员邮箱地址

ServerAdmin root@localhost


指定网站的名称

ServerName web.linux.com


指定默认的网页目录

DocumentRoot “/var/www/html”


指定网站的首页名称

DirectoryIndex index.html


指定错误日志文件、级别

ErrorLog “logs/error_log”

include: debug, info, notice, warn, error, crit, alert, emerg.

LogLevel error


指定访问日志的存放位置、格式

CustomLog “logs/access_log” combined


定义访问日志的格式

LogFormat “%h %l %u %t “%r” %>s %b “%{Referer}i” “%{User‐Agent}i”” combined

%h:客户端地址

%l: 客户端登录名称

%u: 客户端认证名称

%t: 客户端的访问时间

%r: 客户端请求信息(请求方法、资源名称、HTTP协议版本)

%s: 状态码

%b: 响应数据大小,单位字节

%{Referer}i: 记录超链接地址

%{User‐Agent}i:客户端的浏览器类型


衡量网站访问量的指标:

UV User View 用户访问量

PV Page View 页面访问量


启动内存映射机制,加速网站效率

EnableMMAP on

EnableSendfile on


长连接相关配置

KeepAlive On

MaxKeepAliveRequests 100

KeepAliveTimeout 5


针对目录授权

<Directory “/var/www/html”>

Options None

Indexes 无首页时,列出所有文件

FollowSymLinks 允许客户端访问软链接文件

SymLinksifOwnerMatch 允许客户端访问属主、属组与httpd进程相同的软链接文件

ExecCGI

CGI机制 Common Gateway Interface 通用网关接口

作用: 让web进程通过CGI机制调用其他的应用程序,解析动态网页的

MultiViews: 多视图

Require all granted //允许所有客户端访问 12



版权声明:本文为qq_42452450原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。