除了简历做到位,面试题也必不可少,整理了些题目,前面有117道汇总的面试到的题目,后面包括了HTML、CSS、JS、ES6、vue、微信小程序、项目类问题、笔试编程类题等专题。
-
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
当修改了配置文件使用:
建议不要停止再重启,以防报错。
二、反向代理配置
2.1 什么是反向代理?
反向代理和正向代理的区别就是:正向代理代理客户端,反向代理代理服务器。
反向代理(),其实客户端对代理是无感知的,因为客户端不需要任何配置就可以访问,我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,再返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP地址。
2.2 反向代理的好处
- 保护了真实的web服务器,web服务器对外不可见,外网只能看到反向代理服务器,而反向代理服务器上并没有真实数据,因此,保证了web服务器的资源安全。
- 反向代理为基础产生了动静资源分离以及负载均衡的方式,减轻web服务器的负担,加速了对网站访问速度。
- 节约了有限的IP地址资源,企业内所有的网站共享一个在Internet中注册的IP地址,这些服务器分配私有地址,采用虚拟主机的方式对外提供服务;
2.3 http 反向代理配置信息
反向代理配置步骤如下:
- 新增如下配置信息:
- 重新加载配置。
三、反向代理集群搭建(待补充)
四、正向代理配置
4.1 什么是正向代理?
前面提到过,正向代理代理客户端,反向代理代理服务器。
4.2 http 正向代理配置信息
正向代理:如果把局域网外的想象成一个巨大的资源库,则局域网中的客户端要访问,则需要通过代理服务器来访问,这种代理服务就称为正向代理。
配置如下:
Nginx 正向代理配置说明:
- 配置 解析 地址,比如 ,以及超时时间(5秒)。
- 配置正向代理参数,均是由 变量组成。其中 部分的配置,是为了解决如果 中带 “”(点)后 503 错误。
- 配置缓存大小,关闭磁盘缓存读写减少,以及代理连接超时时间。
- 配置代理服务器 状态缓存时间。
注意⚠️:nginx正向代理不支持代理 网站。
因为 不支持 ,所以无法正向代理 网站。如果访问 网站,比如:, 日志如下:
配置完之后, 重新加载配置。
如果出现端口被占用, 查看80端口的进程号,然后用,删除进程,再重启服务。
查看方法
4.3 正向代理使用
在需要访问外网的机器上(Linux系统)执行以下操作之一即可:
其中,yourproxyaddress也就是你的服务器的ip了,就是上面配置中的80,可以根据自己的需要修改。
4.4 Nginx 支持正向代理 https
本身是不支持协议请求转发,为了让能达到这一效果需要借助第三方模块ngx_http_proxy_connect_module。首先下载这一模块到服务器,然后准备环境。
编译安装成功后,配置正向代理:
当配置文件配置好之后保存即可,重启,进行测试:
重新加载配置。
去内网服务器里,可以在环境变量里添加代理:
另一种方式不用加环境变量,临时代理
4.4 正向、反向代理对比
通过四、五章节的讲解,正向代理代理客户端,反向代理代理服务器。可以看到反向代理服务器对客户端透明,客户端无需任何配置,只需访问反向代理服务器IP,即可实现访问内网服务。Nginx反向代理服务器只需配置相应的代理规则即可。
正向代理代理客户端,需要在作为Nginx正向代理服务器中配置相应的代理规则,配置方式与反向代理基本一致,同一服务器既作为反向代理服务器、又作为正向代理服务器,是由监听端口转发。Nginx作为正向代理服务器无法代理Https,若需支持的话,需要额外安装第三方模块。
五、SSL 配置
5.1 敲黑板
随着互联网的快速发展,给我们的生活带来便利的同时,也伴随着网络钓鱼、信息泄露、网络诈骗等网络安全事件的频繁发生,企业网站被钓鱼网站仿冒,遭受经济损失,影响品牌形象。
如果网站不使用证书,数据以明文传输,极容易被第三方监听、截取和篡改,而导致用户信息被泄露,给在线用户带来直接损失。通过部署证书后能确保信息传输的安全性,可防止信息泄露。
SSL(安全套接字协议),及其继任者传输层安全(,)是为网络通信提供安全及数据完整性的一种安全协议。与在传输层与应用层之间对网络连接进行加密。
证书是数字证书(数字证书包括:SSL证书、客户端证书、代码签名证书等)的一种,因为配置在服务器上也称为。就是遵守协议,由受信任的数字证书颁发机构(如:沃通CA)在验证服务器身份后颁发的一种数字证书,它使用协议在浏览器和之间建立一条安全通道,数据信息在与之间的安全传输.。
的特点:
- 可用于保护正常运行于之上的任何应用协议,如或的通信,最常见的是用来保护的通信。
- 的优点在于它是与应用层协议无关的。高层的应用协议(如等)能透明地建立于之上。
- 在应用层协议之前就已经完成加密算法、通信密钥的协商以及服务器的认证工作。在此之后应用层协议所传送的数据都会被加密,从而保证通信的安全性。
的功能 :
- 客户对服务器的身份认证。服务器允许客户的浏览器使用标准的公钥加密技术和一些可靠的认证中心()的证书,来确认服务器的合法性。
- 服务器对客户的身份认证。也可通过公钥技术和证书进行认证,也可通过用户名,password来认证。
- 建立服务器与客户之间安全的数据通道。要求客户与服务器之间所有发送的数据都被发送端加密、接收端解密,同时还检查数据的完整性。
使用的优势:
- 用于实现数据加密传输,防止数据被泄露和篡改;
- 用于认证服务器身份,防范被钓鱼网站攻击;
- 用于消除浏览器地址栏发出的“不安全”警告;
- 提高搜索引擎排名;
- 提升用户对网站的信任;
- 有助于提高网站的在线销售业绩;
配置模块首先需要证书,证书可以自己手动颁发也可以在阿里云申请。
默认情况下模块并未被安装,如果要使用该模块则需要在编译时指定参数。
5.2 CA 证书生成
本小节主要讲述如何通过证书签名生成CA证书。
- 步骤1:生成key秘钥
- 步骤2:生成证书签名请求文件(csr文件)
- 步骤3:生成证书签名文件(CA文件)
5.2.1 生成 key 秘钥
推荐一些系统学习的途径和方法。
每个Web开发人员必备,很权威很齐全的Web开发文档。作为学习辞典使用,可以查询到每个概念、方法、属性的详细解释,注意使用英文关键字搜索。里面的一些 HTML,CSS,HTTP 技术教程也相当不错。
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
HTML 和 CSS: