🌐CDN简介
初学Web开发时,我们经常听说CDN这个词,但在接触之前,对它的印象可能仅限于网络请求的优化。我第一次使用CDN是在查找JS文件时遇到的。在此之前,我通常会下载JS文件,然后在项目中进行引用。然而,有一天我找不到特定的JS文件下载地址,于是发现了一个名为www.bootcdn.cn的网站,它汇集了大量JS文件,并且可以直接在项目中引用它们的地址。
在购买服务器时,我也注意到了一些广告,涉及到CDN加速等概念。当时觉得用不到,便没有深入了解。然而,最近整理笔记时再次看到了CDN这个词,于是决定进行更深入的学习。
🕹️那么,究竟什么是CDN呢?
CDN的全称是Content Delivery Network,即内容分发网络。
⛲为什么要使用CDN?
根据我的经验,CDN显然能够加速网站的访问速度(因为有CDN服务器)。那么,使用CDN服务器引入JS文件的绝对路径和自己下载并使用相对路径引入有什么区别呢?
在我们的应用中,通常采用应用服务器和资源服务器分离的方式。
应用服务器主要用于存放我们的代码(JS、CSS不放在应用服务器上)。
资源服务器则主要存储一些静态资源,而CDN作为我们的资源服务器。
CDN主要用于存储JS、CSS文件,能够加速获取这些内容。通过深入了解CDN,我们可以更好地理解在Web开发中如何利用其加速和优化网站性能。
参考资料:
🔢搜索引擎优化(SEO)
SEO,即搜索引擎优化,是一项旨在提升网站在搜索引擎中排名的技术。与之相关的概念还包括搜索引擎营销(SEM),其中包括搜索引擎优化(SEO)、付费排名、精准广告以及付费收录。SEM中的SEO和竞价是两种不同的策略,而SEO则是SEM的一种方式。需要注意的是,虽然SEM需要付费(比如百度的广告),但SEO是一种无需额外费用的优化手段,通过自行配置以提高搜索引擎的权重。
SEO被视为一门技术,其主要目的是通过优化手段提高网站的浏览量。那么为什么我们需要SEO呢?
让我们以搜索“Java微信公众号”为例:
我们发现搜索结果是有先后排名的,博客园和CSDN等平台通常排名靠前。然而,面对众多平台,为什么像开源中国、简书等平台的排名就无法超越呢?这是因为它们在SEO方面做得不够好。想要在搜索引擎中提高自己网站的权重,也就是让网站排名更靠前,就需要深入学习和实践SEO。
通过学习SEO,我们能够更好地理解如何调整网站结构和内容,以便在搜索引擎中更好地被检索和展示,从而提高网站的可见性和访问量。
⚽提升搜索引擎权重的有效方法
在优化网站以提高搜索引擎权重的过程中,有许多方法可以采用,以下是一些实用的技巧:
1. 优化页面结构
扁平化结构: 尽量使用扁平的结构,减少层次深度,因为搜索引擎对过深的层次结构可能不太友好。
首页链接控制: 控制首页链接数量,确保导航简洁,推荐中小网站在100个链接以内。
扁平化目录层次: 保持目录层次的扁平化,确保小蜘蛛能够轻松到达任何内页,避免纵向结构。
2. 导航SEO优化
文字导航: 尽量使用文字导航,包括头部、底部、内容部分,确保主导航、副导航、分类导航都使用文字。
面包屑导航: 在每个网页上添加面包屑导航,以便用户了解网站的组织形式。
3. 内容页面布局优化
左右布局: 使用左侧正文、右侧热门文章和相关文章的布局,下方放置版权信息和链接。
栏目排布: 首页和栏目的排布要清晰,注意布局的合理性。
4. 代码优化
重要内容前置: 重要内容的HTML代码放在页面前部,可以通过CSS来调整布局。
避免JS输出: 尽量避免使用JS输出重要内容,因为搜索引擎可能无法理解JS。
少使用iframe: 谨慎使用iframe框架,因为搜索引擎一般不太喜欢。
避免display:none: 谨慎使用display:none,搜索引擎可能会过滤掉内容,可以考虑使用z-index代替。
5. 加载速度优化
页面大小控制: 确保页面不要超过100KB,以提高加载速度。
图像和多媒体优化: 优化图像和多媒体文件,采用合适的压缩和格式。
这些方法综合应用可以有效提高搜索引擎对网站的权重,增加网站在搜索结果中的排名。
参考相关资料,如慕课网的《浅谈搜索引擎_SEO》和《SEO在网页制作中的应用》,也是深入学习和实践的有益补充。
🧚跨站脚本攻击(XSS)
XSS,即跨站脚本攻击,是一种经常发生在Web应用中的计算机安全漏洞,通常被简称为XSS以避免与CSS样式混淆。这种攻击方式在Web安全领域中属于主流。
XSS漏洞的本质是恶意攻击者利用网站未对用户提交的数据进行适当的转义或过滤处理,通过这个漏洞嵌入一些恶意代码到Web页面中。一旦其他用户访问这个受影响的页面,就会执行相应的嵌入代码。
XSS攻击主要分为两种方式:
反射型: 攻击者构造特殊的URL,用户点击后触发漏洞,将恶意代码反射到页面执行。
存储型: 攻击者将恶意代码存储到服务器,用户访问受影响的页面时触发漏洞,执行恶意代码。
XSS的危害巨大,注入的恶意脚本可以执行任何JavaScript代码,从而获取敏感信息如cookie。注入样式也可能导致页面崩溃。
防范XSS攻击的方法:
不信任用户输入: 最重要的原则是不要信任客户端发送过来的任何数据,始终做好数据的验证和过滤。
编码处理: 对特殊字符进行编码,比如 <, ', > 等特殊字符需要进行编码处理,以防止被解释为代码。
过滤处理: 过滤掉所有可能被调用的属性和标签,如 onclick, onerror, iframe 等,以防止恶意代码的执行。
防范XSS攻击的具体步骤:
编码处理: 使用工具如 he.js 进行字符编码处理。
过滤处理: 利用 Pure-JavaScript-HTML5-Parser 进行DOM解析,过滤可能被调用的属性和标签。
XSS攻击的防范是Web安全中至关重要的一环,特别是在涉及用户输入的场景,如评论功能。深入了解XSS攻击,并采取有效的预防措施,有助于保护网站和用户的安全。
参考资料:
👉CSRF是什么?
CSRF的全称是跨站请求伪造(Cross-site request forgery)。与XSS攻击不同,CSRF是一种攻击方式,它通过夹持用户在已登录的Web应用程序上执行非本意的操作来实现。相对于XSS利用系统对用户的信任,CSRF则是利用系统对页面浏览器的信任。
CSRF攻击的本质在于利用Web的隐式身份验证机制。尽管Web的身份验证机制可以确保请求来自于某个用户的浏览器,但却无法保证该请求是用户明确批准发送的。这是CSRF攻击的根本原因。
防御CSRF攻击的关键: 在请求中放入攻击者无法伪造的信息,并且该信息不存在于Cookie之中。一种简单而有效的防御方式是在提交表单时添加一个token并进行验证。
参考资料: