当前位置: 首页 > news >正文

网站制作长春seo的方法

网站制作长春,seo的方法,重庆网站备案最快几天,宁波网站推广工作室电话前言 最近有用到搜索引擎的功能,这不得把之前的es过程实践一遍,但发现过程坎坷,因为版本太低了。 一、安装es 6.8.12 安装过程跟之前写那章日常记录:elasticsearch 在linux安装_elasticsearch linux安装-CSDN博客一样&#xff0…

前言

最近有用到搜索引擎的功能,这不得把之前的es过程实践一遍,但发现过程坎坷,因为版本太低了。

一、安装es 6.8.12

  安装过程跟之前写那章日常记录:elasticsearch 在linux安装_elasticsearch linux安装-CSDN博客一样,安装包下载Elasticsearch 6.8.12 | Elastic。

  下载完毕,上传到服务器之后直接用tar -zxvf 解压。然后进入config目录,编辑elasticsearch.yml文件。

# ======================== Elasticsearch Configuration =========================
#
# NOTE: Elasticsearch comes with reasonable defaults for most settings.
#       Before you set out to tweak and tune the configuration, make sure you
#       understand what are you trying to accomplish and the consequences.
#
# The primary way of configuring a node is via this file. This template lists
# the most important settings you may want to configure for a production cluster.
#
# Please consult the documentation for further information on configuration options:
# https://www.elastic.co/guide/en/elasticsearch/reference/index.html
#
# ---------------------------------- Cluster -----------------------------------
#
# Use a descriptive name for your cluster:
#
cluster.name: es
#
# ------------------------------------ Node ------------------------------------
#
# Use a descriptive name for the node:
#
node.name: master
#cluster.initial_master_nodes: ["master"]
discovery.type: single-node
#
# Add custom attributes to the node:
#
#node.attr.rack: r1
#
# ----------------------------------- Paths ------------------------------------
#
# Path to directory where to store the data (separate multiple locations by comma):
#
path.data: /home/elasticsearch-6.8.12/to/data
#
# Path to log files:
#
path.logs: /home/elasticsearch-6.8.12/to/logs
#
# ----------------------------------- Memory -----------------------------------
#
# Lock the memory on startup:
#
#bootstrap.memory_lock: true
#
# Make sure that the heap size is set to about half the memory available
# on the system and that the owner of the process is allowed to use this
# limit.
#
# Elasticsearch performs poorly when the system is swapping the memory.
#
# ---------------------------------- Network -----------------------------------
#
# Set the bind address to a specific IP (IPv4 or IPv6):
#
network.host: 0.0.0.0
#
# Set a custom port for HTTP:
#http 请求端口
http.port: 9200

#通讯端口

transport.tcp.port: 9300
#
# For more information, consult the network module documentation.
#
# --------------------------------- Discovery ----------------------------------
#
#discovery.type: zen
#discovery.zen.minimum_master_nodes: 1
# Pass an initial list of hosts to perform discovery when new node is started:
# The default list of hosts is ["127.0.0.1", "[::1]"]
#
#discovery.zen.ping.unicast.hosts: ["host1", "host2"]
#
# Prevent the "split brain" by configuring the majority of nodes (total number of master-eligible nodes / 2 + 1):
#
#discovery.zen.minimum_master_nodes:
#
# For more information, consult the zen discovery module documentation.
#
#
# ---------------------------------- Gateway -----------------------------------
#
# Block initial recovery after a full cluster restart until N nodes are started:
#
#gateway.recover_after_nodes: 3
#
# For more information, consult the gateway module documentation.
#
# ---------------------------------- Various -----------------------------------
#
# Require explicit names when deleting indices:
#
#action.destructive_requires_name: true


#开启登录校验,不开启登录的话两个都关闭掉

xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true

配置完毕之后,进入es 的bin 目录执行./elasticsearch -d 后台挂起启动。

然后需要初始化一次es密码,执行命令./elasticsearch-setup-passwords interactive 会提示每个账号的密码输入,这里简单输入123456。

好了,在浏览器访问9200,提示账号、密码登录,输入就可以了

这样就简单设置账号登录成功了

二、程序上连接

springboot maven引入spring-boot-starter-data-elasticsearch ,跟随springboot版本,这里springboot版本是2.2.5,自动引入elasticsearch 3.2.5

       ... 

       <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
        </dependency>

       ...

yml配置

spring:
  application:
    name: es
  data:
    elasticsearch:

      #这里填真实cluster-name名字
      cluster-name: es

      #这里填真实 cluster-nodes ip+端口
      cluster-nodes: xxxx:9300
      rest:
        uris: http://xxx:9200
        username: elastic
        password: 123456

这里很坑的是springboot不会自动读取es 账号密码,尝试过yml多动配置账号、密码,最终还是没生效(但是我看es 7.x的springboot是会读取的,知道的同学可以说下),然后自己写一个配置类读取账号、密码 。

package com.xxxxx.configuration;import org.apache.http.HttpHost;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.client.CredentialsProvider;
import org.apache.http.impl.client.BasicCredentialsProvider;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestClientBuilder;
import org.elasticsearch.client.RestHighLevelClient;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.elasticsearch.config.AbstractElasticsearchConfiguration;
import org.springframework.data.elasticsearch.core.ElasticsearchRestTemplate;/*** * 描述:elasticsearch配置* @author sakyoka* @date 2024年10月11日 下午3:47:19*/
@Configuration
public class ElasticsearchConfiguration extends AbstractElasticsearchConfiguration {@Value("${spring.data.elasticsearch.rest.username}")private String username;@Value("${spring.data.elasticsearch.rest.password}")private String password;@Value("${spring.data.elasticsearch.rest.uris}")private String uris;@Beanpublic ElasticsearchRestTemplate elasticsearchRestTemplate(RestHighLevelClient client) {return new ElasticsearchRestTemplate(elasticsearchClient());}@Overridepublic RestHighLevelClient elasticsearchClient(){//这句关闭很奏效,不然会有异常System.setProperty("es.set.netty.runtime.available.processors", "false");CredentialsProvider credentialsProvider = new BasicCredentialsProvider();credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(username, password));RestClientBuilder builder = RestClient.builder(HttpHost.create(uris)).setHttpClientConfigCallback(http -> {return http.setDefaultCredentialsProvider(credentialsProvider);});return new RestHighLevelClient(builder);}
}

这里es自定义类主要是继承了AbstractElasticsearchConfiguration,重写elasticsearchClient,对RestHighLevelClient设置账号、密码以及请求地址。本来以为重写这个就可以了的,但是提示引用

ElasticsearchTemplate有问题,没错es有两个ElasticsearchRestTemplate以及ElasticsearchTemplate,似乎重写了elasticsearchClient之后一定要用ElasticsearchRestTemplate,所以得重新定义elasticsearchRestTemplate。

好了到目前为止,配置完毕,使用ElasticsearchRestTemplate也正常请求es数据。但是还知道我开启了登录xpack.security.enabled: true同时开启了xpack.security.transport.ssl.enabled: true了吗,这里服务器日志一直打印异常

io.netty.handler.codec.DecoderException: io.netty.handler.ssl.NotSslRecordException: not an SSL/TLS record: 45530000002c00000000000012f208004d3603000016696e7465726e616c3a7463702f68616e647368616b650004bb91f302(已处理日常记录:es TransportClient添加证书处理-CSDN博客)

尝试设置transport的证书,发现还是继续报这个异常,都怀疑生成证书是不是无效的,到目前为止还没解决这个异常,很奇怪的是正常使用,或者这个异常是es节点之间通讯用的?

尝试关闭xpack.security.transport.ssl.enabled: false,但是启动失败至少需要配置证书

xpack.security.transport.ssl.key: ssl/http.key
xpack.security.transport.ssl.certificate: ssl/http.crt
xpack.security.transport.ssl.verification_mode: certificate

 关闭之后以及配置这个证书之后,服务器确实不报错了,但是程序报错也不影响使用,一直提示ElasticsearchSecurityException: missing authentication token for action,这个异常问题也没处理,想到这还是让服务器报异常算了,选择开启xpack.security.transport.ssl.enabled: true

以上问题还没处理。。

最后:

1、没有开启登录时候还好好的,啥异常都没有

2、开启登录之后,程序读取不到账号密码,导致需要写配置类,按道理springboot集成es有默认配置,但是网上太多版本、太多配置,没有一个符合的。

3、es证书生成是否有效目前成谜,一直报异常(已处理日常记录:es TransportClient添加证书处理-CSDN博客)

http://www.zhongyajixie.com/news/22988.html

相关文章:

  • 云一网站建设如何在百度上营销
  • 做网站商铺模板广州专门做seo的公司
  • 创立外包网站如何创建一个平台
  • 怎么用自助网站百度网盘下载app
  • 怎么查询网站备案服务商是哪个免费的关键词优化软件
  • 咨询型网站百度广告联盟app
  • 漯河网站建设全球网站排名前100
  • 正规推广平台百度爱采购优化
  • 网吧装修设计公司优化大师手机版下载
  • 域名备案成功如何做网站百度账号注册中心
  • 上海网站建设设计公司百度网盘app下载安装官方免费版
  • 网站站内优化方法网站快速排名优化哪家好
  • 怎样做日本淘宝网站网站搭建谷歌seo
  • 关于建设商城网站费用平台接广告在哪里接的
  • 手机网站建设论文龙华线上推广
  • cpa自己做网站市场营销推广方案模板
  • 漫画网站做任务给金币知乎关键词搜索排名
  • 域名只做邮箱没网站要备案吗百度sem竞价托管公司
  • 贡井网站建设最近实时热点事件
  • 枣强网址建站搜狗站长工具综合查询
  • 网站挣钱网今天军事新闻最新消息
  • 购物网站前端浮动特效怎么做目前好的推广平台
  • 建设银行手机个人网站苏州seo网站管理
  • 佛山网站建设永网广州市疫情最新情况
  • 二手车为什么做网站十大嵌入式培训机构
  • 阿里云ecs做淘客网站免费的关键词优化工具
  • 什么网站可以做设计赚钱吗汕头seo服务
  • 微网站建设及微信公众号百度seo流量
  • 什么行业做网站搜索创建网站需要什么条件
  • 杭州滨江网站建设公司网站模板库官网