web基础和http协议 附:nginx服务的安装

web基础和http协议:

https://www.baidu.com/

URL

https:// 协议

http://

www.baidu.com/ 域名

web介绍:

DNS和域名

DNS解析的方式:

1、运营商

2、/etc/hosts 人工配置的域名和ip地址之间的映射关系

3、/etc/resolv.conf dns服务器的ip地址 bind,内网解析域名和ip地址之间的关系

网页:

编程语言: HTML语言编译而成的前端页面

纯文本格式的文件

浏览器翻译纯文本格式的文件,便于用户进行浏览

网站: 由多个页面构成的,是网页的一个结合体。

首页: 网站在设计时,已经设计好了的,用户打开该站点默认的页面。

链接:

URL: https://www.baidu.com/

超链接: 将网站中的不同页面链接起来,形成一个内部的连接。

html: 编写网页的超文本的标记语言

发布: 域名,网页设计好,多个页面通过超链接连接在一起,形成网站,然后注册发布。

< title> 定义文档的标题

< base> 页面链接的默认地址

< meta> html文档中元数据

< script> 客户端的脚本文件

web:

world wide web 全球广域网 万维网
是一种分布式图形信息系统:

强大的网络基础设施

强大的硬件设备和市场能够接受的价格

web1.0 已淘汰

纯页面模式,单向行为。

web2.0:

更注重用户的交互,用户即是网站内容的消费者,同时也是网站内容的制造者。

静态页面:

文本格式的页面,是一个标准的HTML文件

文本,图像,声音,动画都属于页面的内容。也是静态页面

没有后台数据库,所有的信息是不可以交互。

相对更新起来比较麻烦,一般用于网贴的首页或者是展示型的网站

静态页面的URL是一个固定地址

动态页面:

网页是URL是不固定的,后台能够和用户进行交互

在动态网站的URL中,一般都有”?”

动态页面主要是和数据库进行交互

静态页面的特点:

1、固定的URL地址
2、页面就是一个纯文本的用HTML语言编译的文件
3、静态页面没有后台数据库
4、静态页面不能实现交互
5、访问速度快,更新起来比较麻烦

动态页面:

1、交互性 网页会根据用户的要求和操作进行响应,甚至改变页面的内容
2、自动更新
3、不同时间不同的人看到的页面会发生变化。

协议: 就是内容信息之间传播的规则和标准

cookie协议:浏览器提供的协议功能
cookie的信息不是保存在网站的,保存在浏览器本地,保存用户的登录状态,跟踪统计用户访问网站的习惯。
是一个很小的文件,主要的作用是保存用户的信息。

http协议:

超文本传输协议,客户端和服务端之间进行数据传输的一种规则。
http是应用层的协议,建立在传输层的tcp之上,客户端和服务端之间通过tcp协议建立连接,
应用层上使用http协议进行数据传输,通过指定端口来进行通信。

http建立连接的过程:

客户端和服务端通过tcp协议建立连接,客户端向服务端的80端口发送连接请求
三次握手的过程

http数据传输

客户端向服务端发送请求(http),http的请求

请求头和请求体

method: 客户端的请求方式 get post
path: 客户端请求的路径
scheme: 请求的协议 (https)
accept: 客户端请求之后,服务端需要响应客户端,客户端能够接受的数据类型
host: 显示请求客户端的ip地址
proxy-connection: keep-alive 告诉服务器如何对请求连接处理 keepalive
keepalive: 服务端响应请求,并且传输完数据之后,不要立刻关闭连接,保持连接一段时间 (tcp连接)
user-agent: 客户端请求的工具信息 (浏览器的信息)
http1.1新增的功能 http1.0......
响应头和响应体:
请求方法: GET
状态代码: 200

状态码: 指的服务端对客户端请求的响应结果。

1xx 信息提示

2xx 200-206

200 表示成功,客户端发送的请求服务端能够成功的处理

3xx 300-305

重定向

4xx 400-415

客户端错误

5xx 500-505

服务端错误

200 成功 请求成功

301 重定向 永久重定向

302 临时重定向

304 表示访问的是缓存

403 客户端没有权限访问服务端的页面

404 客户端请求的页面不存在

500 内部服务器错误

502 网关失效

503 当前服务不可用

504 网关请求超时

注:产生502(无效网关)的原因:

首先查看网络问题,看看数据包没有送到网卡;

如果有数据包,但是网卡没收到,可能是网卡问题或防火墙问题;

如果网卡接收到了,处理不了,查看服务器问题

c/s client server app---服务器

b/s browser server 浏览器----服务器

请求的方式:

get: get是客户端向服务端请求的默认方式,请求数据

get的请求是可以被缓存的

get的请求,请求字段的长度是有限制的

get的方式,请求的字段会显示再url中,不太安全

post: post是向服务端发送数据,是向服务端添加或者是修改数据

post的数据是没有办法进行缓存的

post的请求没有长度限制

post请求的查询字段在url中是不显示的

服务器处理请求,根据请求体当中的内容进行处理

服务器返回响应的数据,生成一个响应体,响应体包含状态码,表示服务器对请求的处理结果

数据传输,通过tcp建立的连接传输数据

数据传送完毕之后,连接关闭

https: 加密的http。加密的超文本传输协议。在数据传输之前要通过证书进行身份验证,验证通过才可以进行数据传输

http 80

https 443

nginx服务的安装

选择一个新建的虚拟机,选择nginx1.22版本,拖到opt目录下

 安装依赖环境

apt -y install libpcre3-dev zlib1g-dev libssl-dev build-essential

 

 添加用户程序

解压 

cd到此目录下,添加http协议

./configure --prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--with-pcre \
--with-stream \
--with-stream_ssl_module \
--with-stream_realip_module

 用4核cpu加速安装,注意不到设置太多

此时,已安装完毕 

 

cd到/usr/local下,ll查看发现nginx的所有者和所在组都是root,我们要改成nginx

chown -R nginx:nginx nginx/ 换成nginx, ln -s做一个软链接到 /usr/bin/,让系统能够识别到

ln -s /usr/local/nginx/sbin/nginx /usr/bin/

 nginx -t 查看一下语法

 vim /lib/systemd/system/nginx.service 在此目录下添加系统配置文件

[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/run/nginx.pid
#注意文件位置,如果不对 启动不了
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 
#注意启动文件位置
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID
[Install]
WantedBy=multi-user.target

cd nginx,创建目录run,返回上一级,再修改一次所有者所在组chown -R nginx:nginx nginx/

 cd conf/   vim nginx.conf

修改pid号一行如图所示,

检查一下语法是否都正确

 systemctl daemon-reload 获取刚才service的配置文件

 

curl -I连接一下本机,成功

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值