gpt4 book ai didi

c# - 无法使用全文搜索来搜索正文

转载 作者:行者123 更新时间:2023-11-30 18:21:18 27 4
gpt4 key购买 nike

我正在使用带有全文搜索和智能博客的 umbraco 7.4.1。目前面临一个问题。

我无法从博客正文中获取搜索结果,或者任何页面只能从节点名称中获取搜索结果。

我的配置如下

ExamineIndex.config

    <?xml version="1.0"?>
<!--
Umbraco examine is an extensible indexer and search engine.
This configuration file can be extended to create your own index sets.
Index/Search providers can be defined in the UmbracoSettings.config

More information and documentation can be found on CodePlex: http://umbracoexamine.codeplex.com
-->
<ExamineLuceneIndexSets>
<!-- The internal index set used by Umbraco back-office - DO NOT REMOVE -->
<IndexSet SetName="InternalIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/{machinename}/Internal/" />
<!-- The internal index set used by Umbraco back-office for indexing members - DO NOT REMOVE -->
<IndexSet SetName="InternalMemberIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/{machinename}/InternalMember/">
<IndexAttributeFields>
<add Name="id" />
<add Name="nodeName" />
<add Name="updateDate" />
<add Name="writerName" />
<add Name="loginName" />
<add Name="email" />
<add Name="nodeTypeAlias" />
</IndexAttributeFields>
</IndexSet>
<!-- Default Indexset for external searches, this indexes all fields on all types of nodes-->
<IndexSet SetName="ExternalIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/{machinename}/External/" />
<IndexSet SetName="FullTextIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/FullText/">
<IndexAttributeFields>
<add Name="id" />
<add Name="nodeName" />
<add Name="nodeTypeAlias" />
</IndexAttributeFields>
<IndexUserFields>
<add Name="smartBlogBody" />
<add Name="smartBlogSummary" />
<add Name="smartBlogTitle" />
<add Name="test" />
</IndexUserFields>
<IncludeNodeTypes />
<ExcludeNodeTypes />
</IndexSet>
</ExamineLuceneIndexSets>

检查设置.config

<?xml version="1.0"?>
<!--
Umbraco examine is an extensible indexer and search engine.
This configuration file can be extended to add your own search/index providers.
Index sets can be defined in the ExamineIndex.config if you're using the standard provider model.

More information and documentation can be found on CodePlex: http://umbracoexamine.codeplex.com
-->
<Examine>
<ExamineIndexProviders>
<providers>
<add name="InternalIndexer" type="UmbracoExamine.UmbracoContentIndexer, UmbracoExamine" supportUnpublished="true" supportProtected="true" analyzer="Lucene.Net.Analysis.WhitespaceAnalyzer, Lucene.Net" />
<add name="InternalMemberIndexer" type="UmbracoExamine.UmbracoMemberIndexer, UmbracoExamine" supportUnpublished="true" supportProtected="true" analyzer="Lucene.Net.Analysis.Standard.StandardAnalyzer, Lucene.Net" />
<!-- default external indexer, which excludes protected and unpublished pages-->
<add name="ExternalIndexer" type="UmbracoExamine.UmbracoContentIndexer, UmbracoExamine" />
<add name="FullTextIndexer" type="Governor.Umbraco.FullTextSearch.Providers.FullTextContentIndexer, Governor.Umbraco.FullTextSearch" runAsync="true" supportUnpublished="false" supportProtected="false" interval="10" analyzer="Lucene.Net.Analysis.Standard.StandardAnalyzer, Lucene.Net" enableDefaultEventHandler="true" indexSet="FullTextIndexSet" />

</providers>
</ExamineIndexProviders>
<ExamineSearchProviders defaultProvider="ExternalSearcher">
<providers>
<add name="InternalSearcher" type="UmbracoExamine.UmbracoExamineSearcher, UmbracoExamine" analyzer="Lucene.Net.Analysis.WhitespaceAnalyzer, Lucene.Net" />
<add name="ExternalSearcher" type="UmbracoExamine.UmbracoExamineSearcher, UmbracoExamine" />
<add name="InternalMemberSearcher" type="UmbracoExamine.UmbracoExamineSearcher, UmbracoExamine" analyzer="Lucene.Net.Analysis.Standard.StandardAnalyzer, Lucene.Net" enableLeadingWildcard="true" />
<add name="FullTextSearcher" type="UmbracoExamine.UmbracoExamineSearcher, UmbracoExamine" analyzer="Lucene.Net.Analysis.Standard.StandardAnalyzer, Lucene.Net" indexSet="FullTextIndexSet" />
</providers>
</ExamineSearchProviders>
</Examine>

全文搜索.config

<?xml version="1.0" encoding="utf-8" ?>
<FullTextSearch>
<!-- Enable Full Text Indexing/Search -->
<Enabled>false</Enabled>
<!-- Indexing Options-->
<!--
This setting controls when pages are actually rendered to HTML and stored/indexed

This defaults to false. Rendering will be performed at indexing time.

Set this to true to render nodes to HTML on umbraco publishing events and store in a
database cache for indexing, rather than attempt to read the nodes at indexing
time(which can be less reliable).
The advantage of rendering at indexing time is that publishing will be quicker,
and you won't have to republish the entire site before the index is created
properly.
Possible values:
true - Render HTML at publishing time
Note: Indexing must be set to run async in ExamineSettings.config if you set this to true

false - Render HTML at indexing time (default)

Note that if you're overriding renderers from your own code
this affects whether or not your renderer can use the umbraco NodeFactory API
-->
<PublishEventRendering>false</PublishEventRendering>

<!--
This controls which renderer is used to render nodes to HTML
Program - Renders nodes using a modified version of umbraco's
RenderTemplate functionality.
Only works if PublishEventRendering is set to true
HTTP - Render nodes using HttpWebRequests (default)
-->
<DefaultRenderer>HTTP</DefaultRenderer>
<!--
Needed for HTTP Rendering, determines
URL of the default.aspx page on your host. I recommend you use
127.0.0.1 and set the host header below to your domain to avoid
problems with name resolution, firewalls, etc.
-->
<HttpUrl>http://127.0.0.1:61434/default.aspx</HttpUrl>;
<!-- Domain name of your site e.g. www.yoursite.com -->
<HttpHost></HttpHost>
<!-- Indexing request timout in seconds -->
<HttpTimeout>120</HttpTimeout>
<!-- The name of the Search Provider set up in ExamineSettings.config-->
<SearchProvider>FullTextSearcher</SearchProvider>
<!-- The name of the Index Provider set up in ExamineSettings.config-->
<IndexProvider>FullTextIndexer</IndexProvider>
<!--
Full text indexing will be disabled for these node types.
Note that full text indexing is not run for nodes without
a template anyway.
To disable all indexing for a given node type use ExcludeNodeTypes
in ExamineIndex.config
-->
<NoFullTextNodeTypes>
<add name="searchPage" />
</NoFullTextNodeTypes>

<!--
Setting any of the properties under here to true for a given
Node will disable All indexing on that page.
-->
<DisableSearchPropertyNames>
<add name="umbracoSearchHide" />
</DisableSearchPropertyNames>
<!--
This string is passed to every page index<hed
by the indexer in the query string, or as a cookie
depending on the rendering method selected.
e.g. http://yoursite.com/page.aspx?FullTextActive=1
The intention of this is for you to use the supplied
XSLT helper function fulltextsearch.search:IsIndexingActive
which returns true if this parameter is specified in
the query string or by cookie.
-->
<SearchActiveStringName>FullTextActive</SearchActiveStringName>

<!-- Cutomise HTML Tag Stripper here -->
<TagsToRemove>
<add name="script" />
<add name="head" />
</TagsToRemove>
<IdsToRemove>
<add name="mainNavigation" />
</IdsToRemove>

<!-- Override default IIS timeout on publishing requests, value in seconds -->
<ScriptTimeout>1200</ScriptTimeout>


<!-- Name of the full text index in lucene, don't change unless you need to -->
<LuceneFTField>FullTextSearch</LuceneFTField>

<!--
The query generated for Lucene boosts the relevance of the title properties,
if specified. This controls by how much.
-->
<SearchTitleBoost>10.0</SearchTitleBoost>
<!--
By default the Search XSLT Helper returns all fields from the
index for users to modify. Set to false to return only summary fields.
-->
<ReturnAllFieldsInXSLT>true</ReturnAllFieldsInXSLT>
</FullTextSearch>

内容结构

Contentstructure

你知道如何解决这个问题吗?

关于,

最佳答案

你能检查你的索引是否真的生成了吗?您可以在以下位置找到:

ROOT > App_Data > Temp > ExamineIndexes

您应该会看到一个包含您的索引集名称的文件夹?

如果此文件夹为空,那么您的配置中可能有错别字。

如果失败,您可以删除 ExamineIndexes 文件夹并重新启动站点,让 Umbraco 重新生成它们。

告诉我进展如何。

问候

克雷格

关于c# - 无法使用全文搜索来搜索正文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35730124/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com