移动端网站SEO要注意的八大要素

作者: 少校seo 分类: 黑帽seo资讯 发布时间: 2019-11-08 10:01

搜索引擎优化论坛将从八个方面详细分析影响移动网站优化的因素:

一、域名

像个人电脑网站一样,域名越短越好。一个好的移动网站域名不仅要易于记忆和输入,还要便于用户向他人推荐。短域名让用户更直观地理解网站的主旨。

二.服务器

在选择服务器时,中小企业必须选择正规的空间服务提供商,以避免与大量垃圾网站共享知识产权。一个网站和一个服务器的知识产权是最好的,这可以确保顺利和稳定的网站访问。

3.装载速度:

为了提高网站的加载速度,我们需要从以下几个角度考虑:

1.合并文档

合并文件是一种通过将所有脚本放入一个文件来减少超文本传输协议请求的方法。例如,您可以简单地将所有CSS文件放在一个样式表中。

2、CSSSprites

CSSSprites是减少图像请求的有效方法。将所有背景图像放入图片文件,然后通过CSS的背景图像和背景位置属性显示图片的不同部分。

3.打开Gziip压缩。

对所有可能的文件类型进行Gziip压缩是减少文件大小和增加用户体验的简单方法,可以将响应大小减少大约70%。

4.外部调用JavaScript和CSS

JavaScript和CSS被封装并作为外部文件调用,以减少网页中源代码的数量。

5.图像尺寸的优化

尝试将jpg和gif格式的图片转换为png格式,并尝试使用png8。

6.删除网页代码中多余的空行、空格和注释;

网站发布前,删除网页中的空白、空行、评论代码等无意义的内容,有利于减少网页字节,节省搜索引擎蜘蛛的爬行时间。

四.站点结构

建议网站结构采用树形结构。树形结构通常分为三个层次——频道-文章页面。理想的网站结构应该更平坦,内容页面的层次越少越好,这样搜索引擎可以更简单地处理它。

对于移动网站,应该有重要栏目的导航,以及尽可能多的详细页面和重要流量承载页面的输入。布局不应太短,页面内容不应太单一。

网址结构

具有良好的描述性、标准化和简单的网址,有助于用户更方便地记忆和直观地判断网页内容,也有助于搜索引擎更有效地捕捉和理解网页。对于移动网站来说,也有必要使网址静态化,不要包含太多的参数和符号,避免使用中文网址,因为在后期的改编会受到严重影响。

Seo是准确的,

六、PC机站与移动站的适配

网站适配主要是通过在网站的元中添加代码,使百度搜索引擎更准确地理解个人电脑网站和移动网站之间的对应关系,这有助于百度在移动搜索中用对应的移动页面结果替换原来的个人电脑页面结果。

七、网站被动抓取:

移动网站建成后,有必要详细检查可能影响蜘蛛爬行的各种因素,如机器人文件黑帽seo、页面中的死链接等。

八.其他内容

1.标题后缀设置

最好在移动网站的标题中添加手机版、触摸屏版、手机版等文字,以便用户区分。

2.不要在移动网站和个人电脑站之间放置太多链接

不要在移动网站页面上放置超过两个个人电脑网站链接。移动网站能否支持的搜索引擎优化功能,并且不要在个人电脑网站上放置两个以上的移动网站链接地址。这个问题很容易被许多网站优化者忽略,所以我想提醒站长们注意它。

为什么要前后端分离?有什么优缺点

一.前戏

前端和后端的分离已经成为互联网项目开发的行业标准使用方法。前端和后端的分离可以通过nginx+tomcat有效地解耦(或者可以在中间添加一个节点)。此外,前端和后端的分离将为未来的大规模分布式架构、灵活计算架构、微服务架构和多终端服务(浏览器、车载终端、安卓、IOS等各种客户端)奠定坚实的基础。)。这一步是系统架构从猿进化到成人的唯一途径。

核心思想是前端html页面通过ajax调用后端restuful api接口,并与json数据交互。

在互联网架构中,名词解释:

Web服务器:一般指的是像nginx和apache这样的服务器,它们只能分析静态资源。

应用服务器(Application Server):一般来说,像tomcat、jetty、resin这样的服务器可以分析动态资源和静态资源,但是分析静态资源的能力不如网络服务器。

一般来说,只有网络服务器可以被外部网络访问,而应用服务器只能被内部网络访问。

二、有专门的技术行业(开发商分离)

大多数javaWeb项目过去都是既做前端又做后端的Java程序员。

随着时代的发展,越来越多的大、中、小企业开始越来越清晰地划分前端和后端的界限。前端工程师只关心前端事务,后端工程师只关心后端事务。俗话说,技术领域有其特殊性。如果一个人什么都知道,那么他毕竟什么都不擅长。

大中型公司需要专业人士,小公司需要多面手,但为了个人职业发展,我建议离职。

1.对于后端java工程师:

关注java基础、设计模式、jvm原理、spring+springmvc原理和源代码、linux、mysql事务隔离和锁定机制、mongodb、http/tcp、多线程、分布式架构、灵活计算架构、微服务架构、java性能优化以及相关项目管理等。

后端追求三个高度(高并发性、高可用性、高性能)、安全性、存储、业务等。

2.对于前端工程师:

关注html5、css3、jquery、angularjs、bootstrap、reactjs、vuejs、webpack、less/sass、glow、nodejs、谷歌V8、javascript多线程、模块化、面向方面编程、设计模式、浏览器兼容性、性能优化等。

前端追求的是:页面性能、流畅速度、兼容性、用户体验等。

技术领域有专业,所以你的核心竞争力会越来越高。你在生活中投入的东西,生活会给你反馈。两端的发展越来越高,越来越深。你想做什么就做什么。毕竟,你什么都不擅长。

通过将团队分为前端和后端团队,双方的工程师可以更加专注于各自的领域,独立管理,然后构建一个不断改进的完整团队。

三、原始时代(各种耦合)

我们的JavaWeb项目什么时候使用了几个背景框架,比如Spring MVC/Struts+Spring+Spring JDBC/Hibernate/myBatis等等。

大多数项目在java后端分为三层:控制层、业务层和持久层。控制层负责接收参数黑帽seo,调用相关业务层,封装数据,以及路由和渲染到jsp页面。然后jsp页面使用各种标签或手写java表达式来显示背景数据,播放MVC。

让我们先看看情况:需求被最终确定,代码被编写,测试被完成,然后呢?它会发行吗?您需要使用maven或eclipse等工具将代码键入war包,然后将war包发布到生产环境中的web容器中,对吗?

发布后,您应该启动您的网络容器并开始提供服务。此时,您可以通过配置域名、dns等来访问您的网站。(假设你是一个网站)。那让我想想,你的前后码都在那个战争包里吗?包括你的js,css,图片,各种第三方库,对吗?

#p#分页标题#e#

好的,在浏览器中输入您的网站域名()后会发生什么?(这个问题对很多公司来说也是一个面对面的问题)我拿起它说,请寻找基础不好的童鞋。

浏览器通过域名通过dns服务器找到您服务器的外部网络ip,并将http请求发送到您的服务器。tcp3握手后(tcp/ip低于http),浏览器开始通过tcp协议传输数据。在您的服务器收到请求后,它开始提供服务,接收参数,然后将您的响应返回给浏览器。浏览器然后通过内容类型分析返回的内容,并将其呈现给用户。

让我们看看,假设你的主页上有100张图片。此时,用户的请求看起来像http请求,但不是http请求。当用户第一次访问它时,浏览器中将没有缓存。对于您的100张图片,浏览器将连续请求100个http请求(有些人会告诉我http的长连接和短连接问题,这里不讨论)。当您的服务器收到这些请求时,它将需要使用内存创建套接字来播放tcp传输(在您的服务器上消耗第四个和JSP的痛苦)

大多数以前的javaWeb项目使用jsp作为页面层向用户显示数据,因为流量不高,所以没有那么严格的性能要求。然而,在大数据时代,对互联网项目的性能要求越来越高,原来耦合前端和后端的架构模式已经逐渐不能满足我们,因此我们需要找到一种解耦的方法来大大提高我们的负载能力。

1.动态资源和静态资源都耦合在一起。服务器压力很大,因为服务器将接收各种http请求,如css http请求、js、图片等。一旦服务器出了问题,前端和后端就连在一起,用户体验非常差。

2.用户界面完成设计图后,前端工程师只负责将设计图切割成html。java工程师需要将html打包到jsp页面中,这有很高的错误率(因为页面中通常有大量的js代码)。当修改问题时,双方需要合作开发,这是低效的。

3.jsp必须在支持java的网络服务器中运行(例如tomcat、jetty、resin等)。),和发动机等。无法使用(据说nginx具有高达5w的http并发单个实例,需要使用这一优势),并且其性能无法提高。

4.当第一次请求jsp时,它必须被编译到网络服务器中的servlet中,并且它将第一次运行缓慢。

5.每个请求jsp都是一个html页面,由servlet访问,然后由输出流输出。效率不如直接使用html高。

6.jsp中有许多标签和表达式。前端工程师会发现很难修改页面并遇到许多棘手的问题。

7.如果jsp中有很多内容,页面响应会很慢,因为它是同步加载的。

8.您需要前端工程师使用java ide(如eclipse),并需要配置各种后端开发环境。你考虑过前端工程师的感受吗?

基于上述难点,我们应该推进整个项目的开发权重,实现前端和后端的真正脱钩!

V.发展研制模型

老办法是:

1.产品体验/领导者/客户需求

2.制作设计图纸的用户界面

3.前端工程师制作html页面。

4.后端工程师将html页面设置为jsp页面(前端和后端非常依赖,后端必须等到前端html运行良好后再设置jsp。如果html发生变化,将会更加痛苦和低效)

5、整合问题

6.返工前端

7.后端返工

8.二次集成

9.成功集成

10.交付

新方法是:

1.产品体验/领导者/客户需求

2.制作设计图纸的用户界面

3.前端和后端同意的接口&数据和参数

4.前端和后端的并行开发(不需要很强的依赖性,允许前端和后端的并行开发。如果需求改变了,只有界面&如果参数没有改变,就不需要修改两边的代码,开发效率高)。

5.前端和后端的集成

6.前端页面调整

7.成功集成

8.交付

六、请求道

老办法是:

1.客户请求

2.服务器的servlet或控制器接收请求(后端控制路由和呈现页面,整个项目的开发权的主要部分在后端)

#p#分页标题#e#

3.调用服务和DAO代码来完成业务逻辑

4.返回jsp

5.jsp显示了一些动态代码

新方法是:

1.浏览器发送请求

2.直接到达html页面(前端控制路由和呈现页面,整个项目开发的权重向前移动)

3.html页面负责调用服务器接口来生成数据(通过ajax等)。,后台返回json格式的数据,它取代了xml,因为它简单高效)

4.填充html以显示动态效果,解析并操作页面上的DOM。

总结新方法的请求步骤:

大量并发浏览器请求->网络服务器集群(发动机)-gt;应用服务器集群(tomcat) ->应用服务器集群;文件/数据库/缓存/消息队列服务器群集

同时,它还可以和子模块一起玩,也可以根据业务一个接一个地分解成小集群,为后续的架构升级做准备。

七、前后分离的优势

1.可以实现真正的前端和后端解耦,前端服务器使用nginx。前端/WEB服务器放置一系列静态资源,如css、js、图片等。(甚至可以将css、js、图片和其他资源放在特定的文件服务器上,比如ariyun的oss,并使用cdn来加快速度)。前端服务器负责控制页面引用&跳转&路由,前端页面异步调用后端接口,后端/应用服务器使用tomcat(将tomcat视为数据提供者)来加速整体响应。(这里需要使用一些前端工程框架,如节点、反应、路由器、反应、还原和网络包。)

2、发现了臭虫,可以快速定位出问题是谁,不会互相踢腿。页面逻辑、跳转错误、浏览器兼容性问题、脚本错误、页面样式和其他问题都是前端工程师的责任。接口数据错误、未能成功提交数据、响应超时以及其他问题都由后端工程师解决。双方互不干涉。前端和后端是相爱的家庭成员。

3.在大并发的情况下,我可以同时横向扩展前端和后端服务器。例如,淘宝上的一台前端服务器需要2000多台前端服务器作为一个集群来抵御数十亿以上的日均pv。(去参加阿里的技术峰会,听他们说他们的网络容器都是自己写的。即使他的单个实例能够抵抗100,000个http并发,2,000个集合也是2亿个http并发,并且它们还可以根据预测的洪峰无限扩展。为什么搜索引擎优化的前端和后端之间的分离很差,只有一个主页,这很可怕。。。)

4.降低后端服务器的并发/负载压力。除了接口之外的所有http请求都被传输到前端引擎。接口的请求调用tomcat,引用nginx反向代理tomcat。除了第一页请求之外,浏览器还会对本地缓存进行大量调用。

5.即使后端服务暂时超时或关闭,前端页面也将正常访问,但数据不能被清除。

6.也许你还需要微信相关的灯光应用,这样你的界面就可以完全共享。如果您也有与应用程序相关的服务,您可以通过一些代码重构来重用大量接口,以提高效率。(多终端应用)

7.无论页面显示多少内容,它都不会害怕,因为它是异步加载的。

8.nginx支持页面热部署,因此无需重启服务器,前端升级更加无缝。

9.提高代码的可维护性。可读性(前端和后端连接在一起的代码很难阅读)。

10.提高开发效率,因为前端和后端可以并行开发,而不是像以前那样严重依赖。

11.在nginx中部署证书。外部网络使用https访问,只有端口443和80是开放的。所有其他端口都被关闭(防止黑客端口扫描)。内部网络使用http,从而确保性能和安全性。

12.前端的大量组件代码可以重用和组件化,以提高开发效率并提取它们!

八.有关注意事项

1.在需求会议期间,前端和后端工程师都必须参加,并且必须准备好接口文档。后端工程师必须写好测试用例(二维),不要让前端工程师充当你的全职测试。建议使用chrome插件postman或soapui或jmeter,服务层测试用例应该用junit编写。附言:前端播放单元测试可以吗?

#p#分页标题#e#

2.上面的接口不是java中的接口。坦率地说,调用接口就是调用控件中的方法。

3.前端团队的工作量增加,后端团队的工作量减少,性能和可扩展性提高。

4.我们需要一些前端框架来解决页面嵌套、分页、页面跳转控制等功能。(上面提到的那些前端框架)。

5、如果你的项目很小,或者是一个简单的内部网项目,那么你可以放心,没有任何架构,但是如果你的项目是一个外部网项目,连贯的。

6.以前,有些人使用像velocity/freemark这样的模板框架来生成静态页面。不同的人有不同的观点。

7.本文的主要目的是说jsp已经从大规模的外部网络java网络项目中消除了,但并不是说jsp根本无法学习。对于一些学生和朋友来说,jsp/servlet和其他相关的java网络基础仍然需要牢牢掌握。否则,你认为springmvc框架是基于什么?

8.如果页面上有一些权限和其他相关检查,那么这些相关数据也可以通过ajax从接口中检索。

9.对于可以在前端和后端完成的逻辑,我建议将其放在前端。为什么?因为您的逻辑需要计算资源,如果您将它放在后端来运行逻辑,它将消耗带宽& Memory & Cpu和其他计算资源,您应该记住服务器的计算资源是有限的,如果放在前端,客户端的计算资源会被使用,所以您的服务器负载会下降(高并发性场景)。与数据验证类似,前端和后端都需要完成!

10.前端需要有一种机制来处理后端请求超时和后端服务停机,并以友好的方式向用户显示它们。