SEO教程

SEO教程

Products

当前位置:首页 > SEO教程 >

如何创建一个适合阳泉地区的搜索引擎优化(SEO)友好的HTML5网站?

96SEO 2026-02-20 03:30 7


如何创建一个适合阳泉地区的搜索引擎优化(SEO)友好的HTML5网站?

它提供了一个分布式多用户能力的全文搜索引擎#xff0c;基于RESTful

web接口。

Elasticsearch是用Java开发的#xff0c;并作为Apache许可条款下的…1

elasticsearch概述

ElasticSearch是一个基于Lucene的搜索服务器。

它提供了一个分布式多用户能力的全文搜索引擎基于RESTful

web接口。

Elasticsearch是用Java开发的并作为Apache许可条款下的开放源码发布是当前流行的企业级搜索引擎。

Elastic官方宣布Elasticsearch进入Version

说明Elasticsearch

8最低jdk版本要求jdk17当前我们选择Elasticsearch版本Elasticsearch8.5.3

DB-Engines

理论上数据从写入Elasticsearch到数据可以被搜索只需要1秒左右的时间实现准实时的数据索引和查询。

天生的分布式的设计数据分片对于应用层透明扩展性良好可以轻易的进行节点扩容支持上百甚至上千的服务器节点支持PB级别的数据存储和搜索。

Elasticsearch的分布式、数据冗余特性提供更加可靠的运行机制且经过大型互联网公司众多项目使用可靠性得到验证。

Rest

API的语言都能够轻易的使用Elasticsearch具备多语言通用的支持特性易于使用。

Elasticsearch

Version

API这将使得Elasticsearch更加容易使用原来被诟病的API混乱问题终于得到完美解决。

高性能

Elasticsearch底层构建基于Lucene具备强大的搜索能力即便是PB级别的数据依然能够实现秒级的搜索。

多客户端支持

支持Java、Python、Go、PHP、Ruby等多语言客户端还支持JDBC、ODBC等客户端。

安全支持

提供单点登录SSO、加密通信、集群角色、属性的访问控制支持审计等功能在安全层面上还支持集成第三方的安全组件在Version

1.3

日志系统应该是Elasticsearch使用最广泛的场景之一了Elasticsearch支持海量数据的存储和查询特别适合日志搜索场景。

广泛使用的ELK套件(Elasticsearch、Logstash、Kibana)是日志系统最经典的案例使用Logstash和Beats组件进行日志收集Elasticsearch存储和查询应用日志Kibana提供日志的可视化搜索界面。

搭建数据分析系统

Elasitcsearch支持数据分析例如强大的数据聚合功能通过搭配Kibana提供诸如直方图、统计分组、范围聚合等方便使用的功能能够快速实现一些数据报表等功能。

在数字化转型的大行其道的当下需要从海量数据中发现数据的规律从而做出一定的决策Elasticsearch一定是最适合的解决方案之一。

搭建搜索系统

Elasticsearch为搜索而生用于搭建全文搜索系统是自然而然的事情它能够提供快速的索引和搜索功能还有相关的评分功能、分词插件等支持丰富的搜索特性可以用于搭建大型的搜索引擎更加常用语实现站内搜索例如银行App、购物App等站内商品、服务搜索。

构建海量数据业务系统即席查询服务

目前大量的需要支持事务的系统使用MySQL作为数据库但随着业务的开展数据量会越来越大而MySQL的性能会越来越差虽然可以通过分库分表的方案进行解决但是操作比较复杂而且往往每隔一段时间就需要进行扩展且代码需要配合修改。

这种情况下可以将数据从MySQL同步到Elasticsearch针对实时性要求不太高或者主要查询历史数据且数据量比较大的场景使用Elasticsearch提供查询而对需要事务实时控制的即时数据还是通过MySQL存储和查询。

作为独立数据库系统

Elasticsearch本身提供了数据持久化存储的能力并且提供了增删改查的功能在某些应用场景下可以直接当做数据库系统来使用既提供了存储能力又能够同时具备搜索能力整体技术架构会比较简单例如博客系统、评论系统。

需要注意的是Elasticsearch不支持事务且写入的性能相对关系型数据库稍弱所有需要使用事务的场景都不能将Elasticsearch当做唯一的数据库系统这使得这种使用场景很少见。

1.4

Google百度类的网站搜索它们都是根据网页中的关键字生成索引我们在搜索的时候输入关键字它们会将该关键字即索引匹配到的所有网页返回还有常见的项目中应用日志的搜索等等。

对于这些非结构化的数据文本关系型数据库搜索不是能很好的支持。

一般传统数据库全文检索都实现的很鸡肋因为一般也没人用数据库存文本字段。

进行全文检索需要扫描整个表如果数据量大的话即使对SQL的语法优化也收效甚微。

建立了索引但是维护起来也很麻烦对于

insert

这里说到的全文搜索引擎指的是目前广泛应用的主流搜索引擎。

它的工作原理是计算机索引程序通过扫描文章中的每一个词对每一个词建立一个索引指明该词在文章中出现的次数和位置当用户查询时检索程序就根据事先建立的索引进行查找并将查找的结果反馈给用户的检索方式。

这个过程类似于通过字典中的检索字表查字的过程。

1.5

Lucene是Apache软件基金会Jakarta项目组的一个子项目提供了一个简单却强大的应用程式接口能够做全文索引和搜寻。

在Java开发环境里Lucene是一个成熟的免费开源工具。

就其本身而言Lucene是当前以及最近几年最受欢迎的免费Java信息检索程序库。

但Lucene只是一个提供全文搜索功能类库的核心工具包而真正使用它还需要一个完善的服务框架搭建起来进行应用。

目前市面上流行的搜索引擎软件主流的就两款Elasticsearch和Solr,这两款都是基于Lucene搭建的可以独立部署启动的搜索引擎服务软件。

由于内核相同所以两者除了服务器安装、部署、管理、集群以外对于数据的操作

1.6

数据根据词条进行分词同时记录文档索引位置将词条相同的数据化进行合并对词条进行排序

先将搜索词语进行分词分词后再倒排索引列表查询文档位置(docId)。

根据docId查询文档数据。

1.7

现在很多互联网应用都是要求实时搜索的所以我们选择了elasticsearch。

详见《软件环境安装》

一个索引就是一个拥有几分相似特征的文档的集合。

比如说你可以有一个客户数据的索引另一个产品目录的索引还有一个订单数据的索引。

一个索引由一个名字来标识必须全部是小写字母并且当我们要对这个索引中的文档进行索引、搜索、更新和删除的时候都要使用到这个名字。

在一个集群中可以定义任意多的索引。

能搜索的数据必须索引这样的好处是可以提高查询速度比如新华字典前面的可以提高查询速度。

Elasticsearch索引的精髓一切设计都是为了提高搜索的性能。

3.3

一个类型是你的索引的一个逻辑上的分类/分区其语义完全由你来定。

通常会为具有一组共同字段的文档定义一个类型。

不同的版本类型发生了不同的变化

版本Type5.x支持多种type6.x只能有一种type7.x默认不再支持自定义索引类型默认类型为_doc8.x默认类型为_doc

3.4

比如你可以拥有某一个客户的文档某一个产品的一个文档当然也可以拥有某个订单的一个文档。

文档以JSONJavascript

Object

Notation格式来表示而JSON是一个到处存在的互联网数据交互格式。

3.5

mapping是处理数据的方式和规则方面做一些限制如某个字段的数据类型、默认值、分析器、是否被索引等等。

这些都是映射里面可以设置的其它就是处理ES里面数据的一些使用规则设置也叫做映射按着最优规则处理数据对性能提高很大因此才需要建立映射并且需要思考如何建立映射才能对性能更好。

Elasticsearch

参考文档https://www.elastic.co/guide/en/elasticsearch/reference/8.5/elasticsearch-intro.html

软件给大家演示基本操作

Standard、Letter、Lowercase、Whitespace、UAX

URL

Email、Classic、Thai等中文分词器可以使用第三方的比如IK分词器。

前面我们已经安装过了。

IK分词器:

data_content}}},number_of_shards:

1,provided_name:

1693294063006,number_of_replicas:

1,uuid:

kYMuXUZQRumMGqHoV0fDJw,version:

{created:

不依赖预先定义的模式所以可以将文档类比为表的一行JSON类型的数据。

我们知道关系型数据库中要提前定义字段才能使用在Elasticsearch中对于字段是非常灵活的有时候我们可以忽略该字段或者动态的添加一个新的字段。

4.3.1

http://www.gulixueyuan.com/xm.jpg,price:

3999

http://www.gulixueyuan.com/xm.jpg,price:

3999}

http://www.gulixueyuan.com/xm.jpg,price

3999}

http://www.gulixueyuan.com/xm.jpg,price:

3999}}]}

http://www.gulixueyuan.com/xm.jpg,price:

4500

创建数据库表需要设置字段名称类型长度约束等索引库也一样需要知道这个类型下有哪些字段每个字段有哪些约束信息这就叫做映射(mapping)。

4.4.1

在关系数据库中需要事先创建数据库然后在该数据库下创建数据表并创建

表字段、类型、长度、主键等最后才能基于表插入数据。

而Elasticsearch中不

需要定义Mapping映射即关系型数据库的表、字段等在文档写入

Elasticsearch时会根据文档字段自动识别类型这种机制称之为动态映射。

映射规则对应:

数据对应的类型null字段不添加true|flaseboolean字符串text数值long小数float日期date

4.4.3

静态映射是在Elasticsearch中也可以事先定义好映射即手动映射包含文档的各字段类型、分词器等这称为静态映射。

DELETE

keyword(不支持分词)。

text该类型被用来索引长文本在创建索引前会将这些文本进行分词转化为词的组合建立索引允许es来检索这些词text类型不能用来排序和聚合。

keyword该类型不能分词可以被用来检索过滤、排序和聚合keyword类型不可用text进行分词模糊检索。

数值型long、integer、short、byte、double、float日期型date布尔型boolean特殊数据类型nested

4.4.4

nested类型是一种特殊的对象object数据类型(specialised

version

《狂人日记》是一篇象征性和寓意很强的小说当时鲁迅对中国国民精神的麻木愚昧颇感痛切。

,comments:

[{name:

}如上所示所以我们有一个文档描述了一个帖子和一个包含帖子上所有评论的内部对象评论。

但是Elasticsearch搜索中的内部对象并不像我们期望的那样工作。

步骤2

我们可以清楚地看到comments.name和comments.age之间的关系已丢失。

这就是为什么我们的文档匹配李四和34的查询。

步骤3删除当前索引

类型的comments字段映射为nested类型而不是默认的object类型

PUT

《狂人日记》是一篇象征性和寓意很强的小说当时鲁迅对中国国民精神的麻木愚昧颇感痛切。

,comments:

[{name:

嵌套对象将数组中的每个对象索引为单独的隐藏文档这意味着可以独立于其他对象查询每个嵌套对象。

文档的内部表示

“comments.name”:

Language(领域专用语言)Elasticsearch提供了基于JSON的DSL来定义查询。

DSL概览:

{id:1,title:华为笔记本电脑,category:华为,images:http://www.gulixueyuan.com/xm.jpg,price:5388}PUT

/my_index/_doc/2

{id:2,title:华为手机,category:华为,images:http://www.gulixueyuan.com/xm.jpg,price:5500}PUT

/my_index/_doc/3

{id:3,title:VIVO手机,category:vivo,images:http://www.gulixueyuan.com/xm.jpg,price:3600}5.2

DSL查询

http://www.gulixueyuan.com/xm.jpg,price

5388}},{_index

http://www.gulixueyuan.com/xm.jpg,price

5500}},{_index

http://www.gulixueyuan.com/xm.jpg,price

3600}}]}

http://www.gulixueyuan.com/xm.jpg,price

5500}},{_index

http://www.gulixueyuan.com/xm.jpg,price

5388}}]}

http://www.gulixueyuan.com/xm.jpg,price:

5500}},{_index:

http://www.gulixueyuan.com/xm.jpg,price:

5388}},{_index:

http://www.gulixueyuan.com/xm.jpg,price:

3600}}]}

http://www.gulixueyuan.com/xm.jpg,price

5388}},{_index

http://www.gulixueyuan.com/xm.jpg,price

5500}}]}

http://www.gulixueyuan.com/xm.jpg,price:

5388}}]}

http://www.gulixueyuan.com/xm.jpg,price

3600}},{_index

http://www.gulixueyuan.com/xm.jpg,price

5500}},{_index

http://www.gulixueyuan.com/xm.jpg,price

5388}}]}

score。

这个分数用于衡量一个文档与特定查询的匹配程度它是基于搜索查询的条件和文档的内容来计算的。

相关性分数越高表示文档与查询的匹配度越高排名也越靠前。

POST

http://www.gulixueyuan.com/xm.jpg,price

5388}},{_index

http://www.gulixueyuan.com/xm.jpg,price

5500}}]}

聚合允许使用者对es文档进行统计分析类似与关系型数据库中的group

max

http://www.gulixueyuan.com/xm.jpg,price

5388},sort

http://www.gulixueyuan.com/xm.jpg,price

5500},sort

http://www.gulixueyuan.com/xm.jpg,price

5388}},{_index

http://www.gulixueyuan.com/xm.jpg,price

5500}}]}

http://www.gulixueyuan.com/xm.jpg,price:

5500},highlight:

color:#e4393c机/font]}},{_index:

my_index,_id:

http://www.gulixueyuan.com/xm.jpg,price:

3600},highlight:

color:#e4393c机/font]}},{_index:

my_index,_id:

http://www.gulixueyuan.com/xm.jpg,price:

5388},highlight:

官方文档https://www.elastic.co/guide/en/elasticsearch/client/java-api-client/8.5/installation.html

6.1.1

xmlnshttp://maven.apache.org/POM/4.0.0

xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0

https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion3.0.5/versionrelativePath/

!--

--/parentgroupIdcom.atguigu/groupIdartifactIdelasticsearch_demo/artifactIdversion0.0.1-SNAPSHOT/versionpropertiesjava.version17/java.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdco.elastic.clients/groupIdartifactIdelasticsearch-java/artifactIdversion8.5.3/version/dependencydependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-databind/artifactIdversion2.12.3/version/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependency/dependenciesbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/plugin/plugins/build/project6.1.2

配置连接

com.atguigu.elasticsearch;import

co.elastic.clients.elasticsearch.ElasticsearchClient;

import

co.elastic.clients.json.jackson.JacksonJsonpMapper;

import

co.elastic.clients.transport.ElasticsearchTransport;

import

co.elastic.clients.transport.rest_client.RestClientTransport;

import

org.apache.http.auth.AuthScope;

import

org.apache.http.auth.UsernamePasswordCredentials;

import

org.apache.http.impl.client.BasicCredentialsProvider;

import

org.apache.http.message.BasicHeader;

import

org.elasticsearch.client.RestClient;

import

org.springframework.boot.SpringApplication;

import

org.springframework.boot.autoconfigure.SpringBootApplication;

import

org.springframework.context.annotation.Bean;SpringBootApplication

public

{SpringApplication.run(ElasticsearchDemoApplication.class,

args);}Beanpublic

BasicCredentialsProvider();credsProv.setCredentials(AuthScope.ANY,

new

UsernamePasswordCredentials(elastic,

111111));RestClient

RestClient.builder(HttpHost.create(http://139.198.127.41:9200)).setHttpClientConfigCallback(hc

hc.setDefaultCredentialsProvider(credsProv)).build();//

Create

RestClientTransport(restClient,

new

ElasticsearchClient(transport);return

esClient;}

com.atguigu.elasticsearch_demo;import

co.elastic.clients.elasticsearch.ElasticsearchClient;

import

co.elastic.clients.elasticsearch.core.SearchResponse;

import

org.springframework.beans.factory.annotation.Autowired;

import

org.springframework.boot.test.context.SpringBootTest;import

java.io.IOException;SpringBootTest

class

ElasticsearchDemoApplicationTests

{Autowiredprivate

request.index(my_index).query(q

{//

elasticsearchClient.search(searchRequest,

Object.class);//

System.out.println(search);SearchResponseObject

search

{System.out.println(hit.source());}}

}打印结果

imageshttp://www.gulixueyuan.com/xm.jpg,

price5500}

imageshttp://www.gulixueyuan.com/xm.jpg,

price5388}



SEO优化服务概述

作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。

百度官方合作伙伴 白帽SEO技术 数据驱动优化 效果长期稳定

SEO优化核心服务

网站技术SEO

  • 网站结构优化 - 提升网站爬虫可访问性
  • 页面速度优化 - 缩短加载时间,提高用户体验
  • 移动端适配 - 确保移动设备友好性
  • HTTPS安全协议 - 提升网站安全性与信任度
  • 结构化数据标记 - 增强搜索结果显示效果

内容优化服务

  • 关键词研究与布局 - 精准定位目标关键词
  • 高质量内容创作 - 原创、专业、有价值的内容
  • Meta标签优化 - 提升点击率和相关性
  • 内容更新策略 - 保持网站内容新鲜度
  • 多媒体内容优化 - 图片、视频SEO优化

外链建设策略

  • 高质量外链获取 - 权威网站链接建设
  • 品牌提及监控 - 追踪品牌在线曝光
  • 行业目录提交 - 提升网站基础权威
  • 社交媒体整合 - 增强内容传播力
  • 链接质量分析 - 避免低质量链接风险

SEO服务方案对比

服务项目 基础套餐 标准套餐 高级定制
关键词优化数量 10-20个核心词 30-50个核心词+长尾词 80-150个全方位覆盖
内容优化 基础页面优化 全站内容优化+每月5篇原创 个性化内容策略+每月15篇原创
技术SEO 基本技术检查 全面技术优化+移动适配 深度技术重构+性能优化
外链建设 每月5-10条 每月20-30条高质量外链 每月50+条多渠道外链
数据报告 月度基础报告 双周详细报告+分析 每周深度报告+策略调整
效果保障 3-6个月见效 2-4个月见效 1-3个月快速见效

SEO优化实施流程

我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:

1

网站诊断分析

全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。

2

关键词策略制定

基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。

3

技术优化实施

解决网站技术问题,优化网站结构,提升页面速度和移动端体验。

4

内容优化建设

创作高质量原创内容,优化现有页面,建立内容更新机制。

5

外链建设推广

获取高质量外部链接,建立品牌在线影响力,提升网站权威度。

6

数据监控调整

持续监控排名、流量和转化数据,根据效果调整优化策略。

SEO优化常见问题

SEO优化一般需要多长时间才能看到效果?
SEO是一个渐进的过程,通常需要3-6个月才能看到明显效果。具体时间取决于网站现状、竞争程度和优化强度。我们的标准套餐一般在2-4个月内开始显现效果,高级定制方案可能在1-3个月内就能看到初步成果。
你们使用白帽SEO技术还是黑帽技术?
我们始终坚持使用白帽SEO技术,遵循搜索引擎的官方指南。我们的优化策略注重长期效果和可持续性,绝不使用任何可能导致网站被惩罚的违规手段。作为百度官方合作伙伴,我们承诺提供安全、合规的SEO服务。
SEO优化后效果能持续多久?
通过我们的白帽SEO策略获得的排名和流量具有长期稳定性。一旦网站达到理想排名,只需适当的维护和更新,效果可以持续数年。我们提供优化后维护服务,确保您的网站长期保持竞争优势。
你们提供SEO优化效果保障吗?
我们提供基于数据的SEO效果承诺。根据服务套餐不同,我们承诺在约定时间内将核心关键词优化到指定排名位置,或实现约定的自然流量增长目标。所有承诺都会在服务合同中明确约定,并提供详细的KPI衡量标准。

SEO优化效果数据

基于我们服务的客户数据统计,平均优化效果如下:

+85%
自然搜索流量提升
+120%
关键词排名数量
+60%
网站转化率提升
3-6月
平均见效周期

行业案例 - 制造业

  • 优化前:日均自然流量120,核心词无排名
  • 优化6个月后:日均自然流量950,15个核心词首页排名
  • 效果提升:流量增长692%,询盘量增加320%

行业案例 - 电商

  • 优化前:月均自然订单50单,转化率1.2%
  • 优化4个月后:月均自然订单210单,转化率2.8%
  • 效果提升:订单增长320%,转化率提升133%

行业案例 - 教育

  • 优化前:月均咨询量35个,主要依赖付费广告
  • 优化5个月后:月均咨询量180个,自然流量占比65%
  • 效果提升:咨询量增长414%,营销成本降低57%

为什么选择我们的SEO服务

专业团队

  • 10年以上SEO经验专家带队
  • 百度、Google认证工程师
  • 内容创作、技术开发、数据分析多领域团队
  • 持续培训保持技术领先

数据驱动

  • 自主研发SEO分析工具
  • 实时排名监控系统
  • 竞争对手深度分析
  • 效果可视化报告

透明合作

  • 清晰的服务内容和价格
  • 定期进展汇报和沟通
  • 效果数据实时可查
  • 灵活的合同条款

我们的SEO服务理念

我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。

提交需求或反馈

Demand feedback