<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Opensolr</title>
<link>https://opensolr.com/</link>
<description>Opensolr changelog, guides and documentation: managed Solr hosting, AI hybrid search, web crawler and RAG API updates.</description>
<language>en</language>
<lastBuildDate>Thu, 10 Sep 2026 10:43:53 +0000</lastBuildDate>
<atom:link href="https://opensolr.com/feed.xml" rel="self" type="application/rss+xml" />
<item>
<title>Opensolr Search for WordPress 1.0.38: Search Operators Work With AI Search On</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-38-search-operators-work-with-ai-search-on</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-38-search-operators-work-with-ai-search-on</guid>
<description>Opensolr Search for WordPress 1.0.38 makes the +word, -word and exact-phrase search operators work with AI search switched on. They are keyword syntax, so they only ever bound the keyword half of a hybrid query, and the semantic half handed the excluded results straight back — while the minus sign, left inside the query text, actually pulled results towards what the visitor asked to remove. A prefixed term is now applied as a filter over the whole result set. Quoted phrases survive too, so +&quot;mac</description>
<category>WordPress Plugin</category>
<pubDate>Wed, 09 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 5.0.4: Search Operators Work With AI Search On</title>
<link>https://opensolr.com/changelog/entry/drupal-module-5-0-4-search-operators-work-with-ai-search-on</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-5-0-4-search-operators-work-with-ai-search-on</guid>
<description>Opensolr Search for Drupal 5.0.4 makes the +word, -word and exact-phrase search operators work with AI search switched on. They are keyword syntax, so they only ever bound the keyword half of a hybrid query, and the semantic half handed the excluded results straight back — while the minus sign, left inside the query text, actually pulled results towards what the visitor asked to remove. A prefixed term is now applied as a filter over the whole result set. Quoted phrases survive too, so +&quot;machine</description>
<category>Drupal Module</category>
<pubDate>Wed, 09 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Per-URL Crawl Settings: HTTP Login, Do-Not-Index and Do-Not-Follow Rules</title>
<link>https://opensolr.com/changelog/entry/web-crawler-per-url-settings-http-login-noindex-nofollow-global-exclusions</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-per-url-settings-http-login-noindex-nofollow-global-exclusions</guid>
<description>The Web Crawler now takes per-URL settings. Each row in Crawl URLs has a cog holding an optional HTTP user name and password — so staging sites, intranets and members areas can finally be crawled — plus two lists of regular expressions: do not index (the page is still fetched and its links followed, but it never reaches your index) and do not follow (the link is never queued at all). The same two lists exist index-wide under Global Exclusions, and the two sets combine rather than override each o</description>
<category>Web Crawler</category>
<pubDate>Wed, 09 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Operators Now Hold With AI Search On: +word, -word and Exact Phrases</title>
<link>https://opensolr.com/changelog/entry/search-operators-plus-minus-exact-phrases-work-with-ai-hybrid-search</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-operators-plus-minus-exact-phrases-work-with-ai-hybrid-search</guid>
<description>The +word, -word and exact-phrase search operators now work with AI search switched on. They are keyword syntax, so they only ever bound the keyword half of a hybrid search — and in Union mode the semantic half handed the excluded results straight back. Exclusion failed twice over, because the minus sign means nothing to an AI model: left inside the query, -refurbished read as one more word and pulled results towards refurbished listings. A prefixed term is now applied as a filter over the whole</description>
<category>Search</category>
<pubDate>Wed, 09 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Is Now Free Forever — the Free Plan No Longer Expires</title>
<link>https://opensolr.com/changelog/entry/opensolr-free-forever-free-plan-no-longer-expires</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-free-forever-free-plan-no-longer-expires</guid>
<description>The 15-day free trial is gone. Every registered Opensolr account is now on a free plan that never expires — no countdown, no end date, no credit card. Your Opensolr Index stays online for as long as you use it. Nothing is charged, and nothing switches off on a date. The one rule worth knowing is in section 9.2 of the Terms: an index left completely unused for 30 days may be removed, and we email you before that happens.</description>
<category>Account</category>
<pubDate>Tue, 08 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for WordPress 1.0.36: Search Suggestions Line Up Under the Box</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-36-autocomplete-suggestions-aligned-under-search-box</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-36-autocomplete-suggestions-aligned-under-search-box</guid>
<description>The Opensolr Search plugin for WordPress 1.0.36 is a small polish release. The search-as-you-type suggestions now line up directly under the search box, instead of starting under the camera (image-search) button on its left.</description>
<category>WordPress Plugin</category>
<pubDate>Mon, 07 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 5.0.1: Facet “Show all” Fix, a Smarter AI Toggle, Aligned Autocomplete and a Collapsible Mobile Language Menu</title>
<link>https://opensolr.com/changelog/entry/drupal-module-5-0-1-facet-show-all-ai-toggle-autocomplete-mobile-language-menu</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-5-0-1-facet-show-all-ai-toggle-autocomplete-mobile-language-menu</guid>
<description>The Opensolr Search module for Drupal 5.0.1 is a polish release that fixes the search-page details you actually touch. The facet &amp;ldquo;Show all&amp;rdquo; dialog lists every value again instead of coming up empty. The AI (hybrid) search toggle appears only when it can be used &amp;mdash; when your plan includes vector search and you are under the monthly AI limit. Autocomplete suggestions line up directly under the search box. The language menu collapses again on phones &amp;mdash; grouped country variants</description>
<category>Drupal Module</category>
<pubDate>Mon, 07 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for WordPress 1.0.35: Search by Image, Result Lightbox, AI Toggle and Reuse an Existing Index</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-35-search-by-image-lightbox-ai-toggle-reuse-index</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-35-search-by-image-lightbox-ai-toggle-reuse-index</guid>
<description>The Opensolr Search plugin for WordPress 1.0.35 brings the same new search-page experience to WordPress. Search by image. A camera button turns a photo into a search (visual labels, OCR text or a barcode), keeps the thumbnail on screen, and offers a &quot;search by picture meaning&quot; alternative. Result thumbnails zoom on hover and open full size in a lightbox with the page title linked underneath. An AI (hybrid) search toggle on the results page, per search. A Duration facet (h:mm:ss min/max slider) f</description>
<category>WordPress Plugin</category>
<pubDate>Mon, 07 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 5.0.0: Search by Image, Hover-Zoom Lightbox, AI Toggle and a Duration Facet</title>
<link>https://opensolr.com/changelog/entry/drupal-module-5-0-0-search-by-image-lightbox-ai-toggle-duration-facet</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-5-0-0-search-by-image-lightbox-ai-toggle-duration-facet</guid>
<description>The Opensolr Search module for Drupal 5.0.0 is here, with the biggest batch of search-page features yet. Search by image. A camera button on the search box turns a photo into a search: the picture is read as visual labels, text (OCR) or a barcode, the thumbnail stays on screen with the words it was read as, and an OCR read offers a &quot;search by picture meaning&quot; alternative. Result thumbnails zoom on hover and open full size in a lightbox, with the page title linked underneath. The searched image o</description>
<category>Drupal Module</category>
<pubDate>Mon, 07 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Facet Filter Box Now Searches Every Value, Not Only the Ones on Screen</title>
<link>https://opensolr.com/changelog/entry/facet-sidebar-filter-box-searches-all-values-not-only-visible-rows</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/facet-sidebar-filter-box-searches-all-values-not-only-visible-rows</guid>
<description>The small Filter... box above a long facet list on hosted search pages was only searching the handful of values already displayed, so a channel, brand or author further down the list came back as nothing, even though Show all found it. Typing in that box now searches every value of the facet and lists the matches sorted by count, with Show all still one click away.</description>
<category>Search</category>
<pubDate>Sun, 06 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>My Solr Indexes: Filter by Server, Version and Type, Correct Cluster Bandwidth, Readable on Phones</title>
<link>https://opensolr.com/changelog/entry/my-solr-indexes-facet-filters-cluster-bandwidth-mobile-cards</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/my-solr-indexes-facet-filters-cluster-bandwidth-mobile-cards</guid>
<description>The My Solr Indexes page (Solr menu) is now the same sortable table as the dashboard, with filters on the left: Indexes or Resilient Clusters, the server each index lives on, and the Solr version. Every filter shows how many indexes it would leave, options that would leave none are not shown, and the filters combine with the name search. Bandwidth for a Resilient Cluster now adds the master and all its replicas, the same figure as the cluster&amp;rsquo;s Control Panel, so clusters no longer look alm</description>
<category>Account</category>
<pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Dashboard: One Sortable, Searchable Table for All Your Indexes</title>
<link>https://opensolr.com/changelog/entry/dashboard-indexes-table-sortable-searchable-disk-bandwidth-region</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/dashboard-indexes-table-sortable-searchable-disk-bandwidth-region</guid>
<description>The two lists on the dashboard, bandwidth and disk usage, are now one Indexes table: index name, region (flag, with the country, city and server on hover), Solr version, when it was created, disk used and bandwidth this month, plus a direct link to each index&amp;rsquo;s Control Panel. Search by name, sort on any column, and page through it at 25, 50 or 100 per page, so accounts with hundreds of indexes load as fast as accounts with five. The totals at the top still include bandwidth from indexes de</description>
<category>Account</category>
<pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Facet Filter Mapping: Display Order No Longer Lost When Filtering the Field List</title>
<link>https://opensolr.com/changelog/entry/facet-filter-mapping-order-kept-when-filtering-fields</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/facet-filter-mapping-order-kept-when-filtering-fields</guid>
<description>In Facet Filter Mapping, searching the field list, ticking a field and clearing the search shuffled the enabled facets back into alphabetical order, and a field ticked while the list was filtered could jump ahead of the ones already ordered. The enabled group now keeps the order you set, and a newly ticked field always joins at the end of it.</description>
<category>Facet Mapping</category>
<pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Page Password Protection: Passwords Are Accepted Again</title>
<link>https://opensolr.com/changelog/entry/search-page-password-protection-http-basic-auth-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-page-password-protection-http-basic-auth-fix</guid>
<description>Password-protecting a hosted search page (Index Settings &amp;rarr; Search Page Password) was rejecting the correct username and password on search.opensolr.com: the credentials never reached the check, so every attempt was refused. Fixed. The option uses the index&amp;rsquo;s HTTP credentials, the ones under Security in the Control Panel, and now enforces them as intended.</description>
<category>Search</category>
<pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search by Image: “Picture Meaning” Link After OCR, and Full-Size Result Thumbnails</title>
<link>https://opensolr.com/changelog/entry/search-by-image-picture-meaning-link-result-thumbnail-lightbox</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-by-image-picture-meaning-link-result-thumbnail-lightbox</guid>
<description>Two additions to the hosted search page. When search by image reads text off your photo, the note under the search box now offers a picture meaning link: one click re-runs the search on what the picture shows rather than what was written on it, useful when the text on a label is not the thing you were looking for. And result thumbnails now grow on hover and open at full size on click, in the same viewer used for the searched picture, with the page title linked underneath.</description>
<category>Search</category>
<pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hierarchical Category Facets Now Show the Largest Categories First</title>
<link>https://opensolr.com/changelog/entry/hierarchical-facets-sorted-by-count-largest-categories-first</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hierarchical-facets-sorted-by-count-largest-categories-first</guid>
<description>The hierarchical category facet on hosted search pages was listing its first fifty values alphabetically instead of by size. On a news site that meant fifty one-article headlines beginning with digits, each with a count of 1, while News, Sports and Weather, the categories with thousands of articles and real sub-categories underneath, never appeared. Every level of the hierarchy is now sorted by document count, so the drill-down starts with what matters. Language and locale facets keep their alph</description>
<category>Search</category>
<pubDate>Sat, 05 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search by Image Now Reads Barcodes and QR Codes Too</title>
<link>https://opensolr.com/changelog/entry/search-by-image-barcode-qr-code-scanning</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-by-image-barcode-qr-code-scanning</guid>
<description>Search by image now also reads barcodes and QR codes: point it at a product barcode, a poster&apos;s QR code, or a shipping label, and it is decoded automatically, no separate scanner needed. Combined with the labels it already recognizes and the text it already reads off a picture, search by image now works in three layers: what the picture shows, what is printed on it, and any code on it. See it on the demo page.</description>
<category>Search</category>
<pubDate>Thu, 03 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search by Image Now Reads Labels: Photograph a Shelf Tag, Get the Exact Product</title>
<link>https://opensolr.com/changelog/entry/search-by-image-reads-labels-ocr-shelf-tag-exact-product</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-by-image-reads-labels-ocr-shelf-tag-exact-product</guid>
<description>Search by image now reads a picture when it is mostly text: a shelf tag, a spec label, a receipt. The product name and the article number on it become the query, and the exact product comes back first. Pictures of things still work as before. Nothing to set up, nothing to re-index; the same is in the image_to_text API.</description>
<category>Search</category>
<pubDate>Thu, 03 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search by Image: Upload a Photo, Search Your Index With It</title>
<link>https://opensolr.com/changelog/entry/search-by-image-upload-a-photo-image-to-text</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-by-image-upload-a-photo-image-to-text</guid>
<description>Every Opensolr hosted search page now takes a photo as the query: click the image icon next to the search box, pick a picture, and the search runs on what is in it. The same thing is available to your own code as the image_to_text API endpoint.</description>
<category>Search</category>
<pubDate>Tue, 01 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Analytics: International Characters Fixed, Popular Queries Shows Real Searches</title>
<link>https://opensolr.com/changelog/entry/query-analytics-utf8-fix-popular-queries-real-searches</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/query-analytics-utf8-fix-popular-queries-real-searches</guid>
<description>Two fixes to Query Analytics. Searches containing accented and international characters are now reported UTF-8 correctly instead of showing up garbled, and the Popular Queries chart now shows the searches your visitors actually typed — facet and filter clicks are no longer counted as queries, and real searches are no longer hidden by a popularity threshold.</description>
<category>Query Analytics</category>
<pubDate>Tue, 01 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Control Panel Dropdowns Now Size to Their Content</title>
<link>https://opensolr.com/changelog/entry/control-panel-dropdowns-size-to-content</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/control-panel-dropdowns-size-to-content</guid>
<description>Every dropdown in the Control Panel now sizes to its own content instead of taking half a screen. Filter bars on the log and analytics screens fit on one line again.</description>
<category>Control Panel</category>
<pubDate>Tue, 01 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module 4.5.0 — Access-Restricted Content Excluded, Attached Documents Crawled Again</title>
<link>https://opensolr.com/changelog/entry/drupal-module-4-5-0-access-restricted-content-attached-documents</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-4-5-0-access-restricted-content-attached-documents</guid>
<description>Opensolr Search for Drupal 4.5.0 stops indexing content an anonymous visitor is not allowed to see, and fixes attached-document crawling, facet configuration saves, the embedded widget query and several search page errors.</description>
<category>Drupal Module</category>
<pubDate>Tue, 01 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>WordPress Plugin 1.0.34: Protected Content Kept Out of the Index, Live Price and Stock Sync</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-34-protected-content-price-stock-sync</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-34-protected-content-price-stock-sync</guid>
<description>Opensolr Search for WordPress 1.0.34 stops password-protected posts and hidden WooCommerce products from being indexed, and keeps price, sale price, stock and SKU changes in step with your index. Four settings that could never be saved now save.</description>
<category>WordPress Plugin</category>
<pubDate>Tue, 01 Sep 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>AI Search Toggle — Hybrid or Pure Keyword, the Visitor&apos;s Choice</title>
<link>https://opensolr.com/changelog/entry/ai-search-toggle-hybrid-vs-pure-keyword-hosted-search</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-search-toggle-hybrid-vs-pure-keyword-hosted-search</guid>
<description>The hosted search page now carries an AI toggle next to the Fresh toggle on every vector-capable index, letting each visitor pick hybrid AI search or pure keyword search per search without changing the index settings.</description>
<category>Search</category>
<pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>r/Opensolr Community Opens on Reddit, and the Pricing and Ordering Flow Is Reworked</title>
<link>https://opensolr.com/changelog/entry/opensolr-reddit-community-launch-r-opensolr</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-reddit-community-launch-r-opensolr</guid>
<description>Opensolr now has an official Reddit community, r/Opensolr, for questions, benchmarks, horror stories and feature requests. The same release reworks interface details across the site, most visibly the pricing and ordering flow.</description>
<category>Platform</category>
<pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>WordPress Plugin 1.0.33: Deleted Media Files No Longer Stay Searchable</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-33-deleted-media-no-longer-searchable</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-33-deleted-media-no-longer-searchable</guid>
<description>WordPress plugin 1.0.33 removes a document from the index when you delete it from the Media Library, stops a replaced file leaving its old version behind, and makes a newly uploaded PDF or Office document searchable straight away.</description>
<category>WordPress</category>
<pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module 4.4.0: PIN and EXCLUDE Buttons Work, EXCLUDE ALL Applies, Deleted Documents Leave the Index</title>
<link>https://opensolr.com/changelog/entry/drupal-module-4-4-0-pin-exclude-buttons-work</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-4-4-0-pin-exclude-buttons-work</guid>
<description>Drupal module 4.4.0. The PIN, EXCLUDE and EXCLUDE ALL buttons on the search results page now save rules instead of returning a permission error, EXCLUDE ALL rules are now read by the search itself, and deleted or replaced documents no longer stay searchable.</description>
<category>Drupal</category>
<pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Office Document Extraction Fixed: ODT Text Loss, Empty ODS and ODP Documents, and Missing PPT and CSV Support</title>
<link>https://opensolr.com/changelog/entry/odt-extraction-text-after-bold-links-no-longer-lost</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/odt-extraction-text-after-bold-links-no-longer-lost</guid>
<description>Three extraction faults fixed in one pass: .odt files lost every word after their first bold or linked run, .ods and .odp files indexed as empty documents with no error, and legacy .ppt and CSV files were rejected as unsupported. All are now read correctly by both the Data Ingestion API and the Web Crawler.</description>
<category>Data Ingestion</category>
<pubDate>Mon, 31 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Integration Packages 0.3.0: A Live Test Suite, Three Fixes, and Demo Credentials in Every Quickstart</title>
<link>https://opensolr.com/changelog/entry/integration-packages-0-3-0-live-test-suite-fixes</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/integration-packages-0-3-0-live-test-suite-fixes</guid>
<description>The LangChain, LlamaIndex, Haystack, MCP and Laravel Scout packages are out at 0.3.0, covered end to end by a live test suite that found three bugs, and each one now ships with public demo credentials so the quickstart runs with nothing to sign up for.</description>
<category>API</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>WordPress Plugin 1.0.29 and 1.0.30: Fresh Ranking, the AI Hints Full-Content Fix, and a Clearer Fresh Switch</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-29-fresh-toggle-ai-hints-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-29-fresh-toggle-ai-hints-fix</guid>
<description>Two WordPress plugin releases in one day: 1.0.29 adds a Fresh toggle that ranks recent content higher and fixes AI Hints so it reads the full pages behind your results, and 1.0.30 moves the Fresh control up beside AI Hints as an on/off switch.</description>
<category>WordPress</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module 4.2.3 and 4.2.4: A Fresh Toggle on Your Search Page, and AI Hints That Read Your Full Content</title>
<link>https://opensolr.com/changelog/entry/drupal-module-4-2-3-fresh-toggle-ai-hints</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-4-2-3-fresh-toggle-ai-hints</guid>
<description>The Drupal module gains a Fresh control that lets visitors favour recent content, refined into a plain on/off switch in 4.2.4. AI Hints now reads the full text of the most relevant matches from your index instead of the teaser lines on screen.</description>
<category>Drupal</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Fresh Toggle, a Recency Weight Slider, and Much More Detailed AI Hints Answers</title>
<link>https://opensolr.com/changelog/entry/fresh-toggle-visitors-push-recent-results-up-ranking</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/fresh-toggle-visitors-push-recent-results-up-ranking</guid>
<description>A Fresh toggle lets whoever is searching push recent documents up the ranking, with a per-index weight slider deciding how hard it pushes. AI Hints answers are far more detailed, read the full text of every relevant match, and are now identical across the search page, the modules and all five packages.</description>
<category>Search</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Permanent Live RAG Demo: A Pre-Crawled News Index With Keyword, Vector and Hybrid Comparison</title>
<link>https://opensolr.com/changelog/entry/live-rag-demo-prebuilt-news-index-keyword-vector-hybrid</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/live-rag-demo-prebuilt-news-index-keyword-vector-hybrid</guid>
<description>A ready-made live RAG demo with nothing to set up: a permanent, already crawled and embedded index of tens of thousands of news articles, where you can stream a grounded answer or run the same query keyword-only, vector-only and hybrid, side by side.</description>
<category>Website</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Server Management: PHP-FPM Error Logs Now Readable in the Live Logs Panel</title>
<link>https://opensolr.com/changelog/entry/server-management-php-fpm-error-log-live-logs-panel</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/server-management-php-fpm-error-log-live-logs-panel</guid>
<description>The Live Logs panel on a project now has a third view, PHP-FPM Error, alongside Access and Error. Enabling a dedicated PHP-FPM pool gives that project its own PHP error log automatically, and the viewer reads the path straight from the pool configuration.</description>
<category>Server Management</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Server Management: Dedicated PHP-FPM Pool per Project With Live Worker Counters</title>
<link>https://opensolr.com/changelog/entry/server-management-dedicated-php-fpm-pool-per-project</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/server-management-dedicated-php-fpm-pool-per-project</guid>
<description>Each project on a managed server can now run on its own PHP-FPM pool, so one busy site cannot exhaust the workers of every other site on the box. Live worker counters and a pool file editor are included, and the change is strictly opt-in.</description>
<category>Control Panel</category>
<pubDate>Sat, 29 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Server Management: Apache VHost Rebuilds Now Require Explicit Confirmation</title>
<link>https://opensolr.com/changelog/entry/server-management-vhost-rebuild-explicit-confirmation</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/server-management-vhost-rebuild-explicit-confirmation</guid>
<description>Saving a project only rebuilds its Apache vhost when the hostname, aliases, type or path actually changed, and both that case and the &amp;ldquo;Create VHost&amp;rdquo; button now ask for confirmation first.</description>
<category>Control Panel</category>
<pubDate>Fri, 28 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal and WordPress Live Demos Add One-Time reCAPTCHA Verification With 24-Hour Memory</title>
<link>https://opensolr.com/changelog/entry/drupal-wordpress-demos-recaptcha-verification-24-hours</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-wordpress-demos-recaptcha-verification-24-hours</guid>
<description>The Drupal and WordPress proof-of-concept demo sites now ask for a one-time human verification and remember you for 24 hours of activity, keeping automated traffic off the demos.</description>
<category>Website</category>
<pubDate>Fri, 28 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>The Whole REST API Documented: 14 New Endpoint Articles, a Rewritten Reference, Host Split and Three Fixes</title>
<link>https://opensolr.com/changelog/entry/rest-api-documented-14-endpoint-articles</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/rest-api-documented-14-endpoint-articles</guid>
<description>Every user-facing REST endpoint now has its own article with parameters, real responses and cURL, PHP and Python examples. The API Reference was rewritten around real error responses and the two hosts, api.opensolr.com now serves only AI and Data Ingestion, and three endpoint bugs were fixed.</description>
<category>API</category>
<pubDate>Fri, 28 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search 1.0.27 for WordPress: Fuller, Properly Formatted AI Answers</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-wordpress-1-0-27-fuller-formatted-ai-answers</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-wordpress-1-0-27-fuller-formatted-ai-answers</guid>
<description>Opensolr Search 1.0.27 for WordPress brings the AI answer improvements to WordPress: fuller, properly formatted answers, restricted to what your indexed content states.</description>
<category>WordPress Plugin</category>
<pubDate>Wed, 26 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search 4.2.1 for Drupal: Fuller, Properly Formatted AI Answers</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-drupal-4-2-1-fuller-formatted-ai-answers</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-drupal-4-2-1-fuller-formatted-ai-answers</guid>
<description>Opensolr Search 4.2.1 for Drupal brings the same AI answer improvements: fuller, properly formatted answers restricted to what your indexed content states. Drop-in upgrade, no database updates and no re-index.</description>
<category>Drupal Module</category>
<pubDate>Wed, 26 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Fix: Underscores in Product Codes No Longer Replaced With Spaces</title>
<link>https://opensolr.com/changelog/entry/web-crawler-underscores-product-codes-preserved</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-underscores-product-codes-preserved</guid>
<description>Underscores were being replaced with spaces across the whole text while converting emoji to words, so an identifier such as ABC_123_XL was indexed as ABC 123 XL. Emoji are still converted; everything else is now indexed exactly as written.</description>
<category>Web Crawler</category>
<pubDate>Wed, 26 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>ai_summary Goes Fully Deterministic: Your Instruction Is the Prompt, Byte for Byte</title>
<link>https://opensolr.com/changelog/entry/ai-summary-api-deterministic-instruction-is-the-prompt</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-summary-api-deterministic-instruction-is-the-prompt</guid>
<description>Whatever you send in instruction is now exactly what the model reads, byte for byte — nothing reorders, relabels, appends to or shortens it. All AI integrations ship the new answer behaviour.</description>
<category>API</category>
<pubDate>Wed, 26 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Fuller AI Answers, and Queries That Keep Their Punctuation</title>
<link>https://opensolr.com/changelog/entry/ai-answers-fuller-detailed-bullet-lists-no-invented-content</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-answers-fuller-detailed-bullet-lists-no-invented-content</guid>
<description>AI answers now cover every relevant point from the matched pages, in short paragraphs and bullet lists, and are restricted to what your indexed content actually says. Separately, characters such as [ ] { } ( ) ^ ~ ! are no longer stripped out of search queries.</description>
<category>Search</category>
<pubDate>Wed, 26 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search 1.0.26 for WordPress: Direct AI Hints and a Full Document Reader</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-wordpress-1-0-26-ai-hints-document-reader</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-wordpress-1-0-26-ai-hints-document-reader</guid>
<description>Version 1.0.26 brings the platform AI answer improvements to WordPress: AI Hints answer directly instead of hedging, the Document Reader returns a full readable rendition of the page, and your question is no longer echoed above the answer.</description>
<category>WordPress Plugin</category>
<pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>LangChain, LlamaIndex, Haystack, MCP and Laravel Scout Ship Grounded AI Answers by Default</title>
<link>https://opensolr.com/changelog/entry/langchain-llamaindex-haystack-mcp-laravel-scout-grounded-answers</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/langchain-llamaindex-haystack-mcp-laravel-scout-grounded-answers</guid>
<description>All five AI integrations now send a grounded answer instruction by default and drop weakly matching documents before generating, so RAG answers stay direct and on topic. Update with pip install -U or composer update.</description>
<category>API</category>
<pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search 4.2.0 for Drupal: Direct AI Hints, Full Document Reader, Drupal 12 Readiness</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-drupal-4-2-0-ai-hints-document-reader-drupal-12</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-drupal-4-2-0-ai-hints-document-reader-drupal-12</guid>
<description>Opensolr Search 4.2.0 for Drupal. AI Hints answer the question directly, the Document Reader returns a full readable rendition rather than a summary, the query is no longer echoed above the answer, and the module is Drupal 12 ready. A drop-in upgrade.</description>
<category>Drupal Module</category>
<pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>AI Answers Stop Hedging and the Document Reader Shows the Full Text</title>
<link>https://opensolr.com/changelog/entry/ai-answers-stop-hedging-no-query-echo-weak-matches-dropped</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-answers-stop-hedging-no-query-echo-weak-matches-dropped</guid>
<description>AI answers now open with the fact instead of a preamble, no longer echo your question back, and drop weakly matching results before generating. The Document Reader renders the full readable source text rather than a fixed-heading summary.</description>
<category>Search</category>
<pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>RAG in 60 Seconds: A Live Sandbox That Builds a Real Solr Index With No Signup</title>
<link>https://opensolr.com/changelog/entry/rag-in-60-seconds-live-sandbox-no-signup</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/rag-in-60-seconds-live-sandbox-no-signup</guid>
<description>The new Try it live page builds a real Apache Solr index in one click, with no signup. Push your own JSON or a document URL, search it with hybrid search, and ask questions answered from your own content with sources cited.</description>
<category>Website</category>
<pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Scoped API Keys: Restrict Keys per Endpoint and Index, Stop Sharing Your Master Key</title>
<link>https://opensolr.com/changelog/entry/scoped-api-keys-per-endpoint-index-restrictions</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/scoped-api-keys-per-endpoint-index-restrictions</guid>
<description>You can now create additional API keys restricted to chosen endpoints and, optionally, to a subset of your indexes, with an optional expiry date — so your root-level master key never has to leave your hands.</description>
<category>Security</category>
<pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search API Opensolr 2.3.0 and 2.4.0: Opensolr Takes Over Maintenance, Admin Fatal Error Fixed, New Four-Step Setup</title>
<link>https://opensolr.com/changelog/entry/search-api-opensolr-2-3-0-maintenance-admin-fatal-error-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-api-opensolr-2-3-0-maintenance-admin-fatal-error-fix</guid>
<description>The Search API opensolr connector is now maintained by the Opensolr team. 2.3.0 fixes the admin fatal error, makes Key module integration opt-in and is ready for Drupal 12; 2.4.0 replaces the old registration wizard with a four-step guided setup page.</description>
<category>Drupal Module</category>
<pubDate>Tue, 18 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hosted Search AI Answers Now Give Direct Grounded Answers, Not Just Summaries</title>
<link>https://opensolr.com/changelog/entry/hosted-search-ai-direct-grounded-answers-not-summaries</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hosted-search-ai-direct-grounded-answers-not-summaries</guid>
<description>AI answers now answer the question rather than summarising around it. The same grounded answer mode powers ai_answer across the AI integrations, with configurable retrieval depth and an optional custom instruction.</description>
<category>Search</category>
<pubDate>Sat, 15 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Tuning Now Applies to Every API Call and Integration, and embed_and_search Matches Your Hosted Search Page Exactly</title>
<link>https://opensolr.com/changelog/entry/embed-and-search-api-identical-results-hosted-search-page</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/embed-and-search-api-identical-results-hosted-search-page</guid>
<description>Everything configured in Index Settings &amp;rarr; Search Tuning now applies automatically to the embed_and_search endpoint and to the LangChain, LlamaIndex, Haystack, Laravel Scout and MCP integrations. Every knob can also be overridden per call.</description>
<category>API</category>
<pubDate>Sat, 15 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Dedicated Pages, Docs and FAQs Launched for Every Opensolr AI Integration</title>
<link>https://opensolr.com/changelog/entry/dedicated-pages-docs-faqs-every-ai-integration</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/dedicated-pages-docs-faqs-every-ai-integration</guid>
<description>Every AI integration now has its own product page — LangChain, MCP, LlamaIndex, Haystack and Laravel Scout — alongside a new AI Integrations chapter in the platform documentation, five new FAQ guides, and a redesigned homepage overview of all six ways in.</description>
<category>Website</category>
<pubDate>Fri, 14 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Ships Native LangChain, LlamaIndex, Haystack, MCP and Laravel Scout Integrations, All at v0.2.0 With Grounded RAG Answers</title>
<link>https://opensolr.com/changelog/entry/opensolr-native-langchain-vector-store-gpu-embeddings</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-native-langchain-vector-store-gpu-embeddings</guid>
<description>Opensolr is now a native vector store for LangChain, LlamaIndex and Haystack, a Laravel Scout driver, and a listed server in the official MCP Registry — all at v0.2.0, with Data Ingestion API writes, a lexical-only mode, a new vector_regions endpoint, and a one-call ai_answer.</description>
<category>API</category>
<pubDate>Fri, 14 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>WordPress Plugin 1.0.25: Search Page Now Lives Inside Your Own Theme</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-25-search-page-inside-your-theme</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-25-search-page-inside-your-theme</guid>
<description>Opensolr Search 1.0.25 turns /opensolr-search/ into an ordinary WordPress page wrapped by your own theme, fixes pagination and shortcode styling, and is verified against WordPress 7.1.</description>
<category>WordPress Plugin</category>
<pubDate>Thu, 13 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Service Availability: Signups and Payment Methods Restricted in 23 Countries</title>
<link>https://opensolr.com/changelog/entry/service-availability-signups-payments-restricted-23-countries</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/service-availability-signups-payments-restricted-23-countries</guid>
<description>For security and compliance reasons, new Opensolr accounts and new payment methods can no longer be created from 23 listed countries. Existing accounts are unaffected, and cases are still reviewed individually on request.</description>
<category>Security</category>
<pubDate>Thu, 13 Aug 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module: Point Multiple Drupal Sites at One Shared Opensolr Index</title>
<link>https://opensolr.com/changelog/entry/drupal-module-multiple-sites-one-shared-index</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-multiple-sites-one-shared-index</guid>
<description>The Drupal module Settings page can now attach a site to an existing index from your Opensolr account instead of always creating a new one, so several Drupal instances can feed a single search experience.</description>
<category>Drupal Module</category>
<pubDate>Fri, 31 Jul 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Varnish Full-Page Cache Is Now Configurable From the Opensolr Control Panel</title>
<link>https://opensolr.com/changelog/entry/varnish-full-page-cache-configurable-control-panel</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/varnish-full-page-cache-configurable-control-panel</guid>
<description>The Varnish card in your server&amp;rsquo;s Services tab gains a Configure button: cache-exclusion rules with a URL tester and one-click purge, or the raw VCL. Every save is backed up, compile-tested and applied with zero downtime.</description>
<category>Server Management</category>
<pubDate>Fri, 31 Jul 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hybrid Search Now Runs on the Proprietary Opensolr Hybrid Query Parser</title>
<link>https://opensolr.com/changelog/entry/hybrid-search-proprietary-opensolr-hybrid-query-parser</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hybrid-search-proprietary-opensolr-hybrid-query-parser</guid>
<description>Every vector-enabled index now fuses keyword and semantic relevance through {!hybrid}, a proprietary Opensolr query parser that runs only on Opensolr clusters.</description>
<category>Search</category>
<pubDate>Fri, 24 Jul 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Live Varnish and Memcached Stats Buttons in Server Management Services Tab</title>
<link>https://opensolr.com/changelog/entry/live-varnish-memcached-stats-server-management</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/live-varnish-memcached-stats-server-management</guid>
<description>Every running Varnish or Memcached service in your server&amp;rsquo;s Services tab now has a Stats button that opens a live snapshot of cache performance — hit rate, cache versus backend requests, objects stored, memory used and evictions.</description>
<category>Server Management</category>
<pubDate>Wed, 22 Jul 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>New Security and Trust Center: SOC 2 and ISO 27001 Mapped Controls</title>
<link>https://opensolr.com/changelog/entry/security-trust-center-soc2-iso27001</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/security-trust-center-soc2-iso27001</guid>
<description>The new Security &amp;amp; Trust Center documents how Opensolr protects your data, with controls mapped to the SOC 2 Trust Services Criteria and ISO 27001 and a downloadable overview for vendor security reviews.</description>
<category>Security</category>
<pubDate>Tue, 21 Jul 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Turbo Indexer 2.5.2: Drush 13 Startup and Drupal 11 Compatibility</title>
<link>https://opensolr.com/changelog/entry/turbo-indexer-2-5-2-drush-13-drupal-11-compatibility</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/turbo-indexer-2-5-2-drush-13-drupal-11-compatibility</guid>
<description>Opensolr Turbo Indexer 2.5.2. Starts reliably on Drush 13, parallel background workers run under the correct PHP on every hosting setup, and the release is fully compatible with Drupal 11. Drop-in update, no re-index required.</description>
<category>Drupal Module</category>
<pubDate>Mon, 29 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Fleet-Wide Solr Security Hardening: Older Version Patch and Server-Side Request Controls</title>
<link>https://opensolr.com/changelog/entry/fleet-wide-solr-security-hardening-request-controls</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/fleet-wide-solr-security-hardening-request-controls</guid>
<description>We patched a potential security issue affecting older Apache Solr versions and strengthened server-side request controls across the entire Solr fleet. Rolled out automatically to every server; no customer action required and no effect on indexes or data.</description>
<category>Security</category>
<pubDate>Mon, 29 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search Drupal Module 3.9.0 Adds Drupal 12 Compatibility</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-9-0-drupal-12-compatibility</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-9-0-drupal-12-compatibility</guid>
<description>Version 3.9.0 of the Opensolr Search Drupal module is compatible with Drupal 12, alongside Drupal 10.1 and 11. A drop-in upgrade: no configuration changes, no database updates, no re-index.</description>
<category>Drupal Module</category>
<pubDate>Thu, 18 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module 3.8.5: Fatal Error Viewing Non-Translatable Entity References Fixed</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-8-5-non-translatable-entity-fatal-error-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-8-5-non-translatable-entity-fatal-error-fix</guid>
<description>Version 3.8.5 of the Opensolr Search Drupal module fixes a fatal error triggered by viewing content that references a non-translatable entity. Released on drupal.org.</description>
<category>Drupal Module</category>
<pubDate>Fri, 05 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>One-Click Unsubscribe From Product and Campaign Emails on the Communications Page</title>
<link>https://opensolr.com/changelog/entry/one-click-unsubscribe-product-campaign-emails</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/one-click-unsubscribe-product-campaign-emails</guid>
<description>The Communications page now has a single toggle for product updates, feature announcements and marketing emails, so you can opt out from your admin panel instead of hunting for the link inside an email.</description>
<category>Account</category>
<pubDate>Tue, 02 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Payment Profile VAT Upgrades: Real-Time Validation, Auto-Normalisation, Stripe Sync</title>
<link>https://opensolr.com/changelog/entry/payment-profile-vat-validation-normalization-stripe-sync</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/payment-profile-vat-validation-normalization-stripe-sync</guid>
<description>VAT numbers in your Payment Profile are now validated as you type, normalised before they reach Stripe, and reconciled with tax IDs that already exist on your Stripe customer.</description>
<category>Billing</category>
<pubDate>Tue, 02 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module 3.8.4: Ingestion Fatal Error With Config Entity References Fixed</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-8-4-config-entity-hastranslation-ingestion-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-8-4-config-entity-hastranslation-ingestion-fix</guid>
<description>Opensolr Search for Drupal 3.8.4 fixes a fatal error during data ingestion when a content type has an entity_reference field pointing to a config entity, such as Domain.</description>
<category>Drupal Module</category>
<pubDate>Tue, 02 Jun 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>UK VAT Number Validation Fixed on the Opensolr Ezcmd Service</title>
<link>https://opensolr.com/changelog/entry/uk-vat-number-validation-fix-ezcmd</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/uk-vat-number-validation-fix-ezcmd</guid>
<description>VAT number validation for GB on the Opensolr ezcmd.com service was returning wrong results. UK VAT lookups now resolve correctly.</description>
<category>Billing</category>
<pubDate>Mon, 25 May 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Facet Mapping Overhaul: Type Auto-Detection, Every WordPress Source Mappable, Multi-Valued and Image Fixes</title>
<link>https://opensolr.com/changelog/entry/facet-mapping-auto-detects-solr-field-types</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/facet-mapping-auto-detects-solr-field-types</guid>
<description>Facet Mapping now auto-detects the Solr field type, exposes every indexable WordPress source including postmeta and WooCommerce taxonomies, emits multi-valued fields identically from crawler and ingestion, and resolves image fields to real URLs.</description>
<category>Facet Mapping</category>
<pubDate>Fri, 24 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search Drupal Module 3.8.0: Thumbnails, Facet Mapping and Multi-Valued Fields</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-8-0-thumbnails-facet-mapping-multi-valued-fields</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-8-0-thumbnails-facet-mapping-multi-valued-fields</guid>
<description>Drupal module 3.8.0 is tagged on drupal.org — the first public release since 3.6.0. It adds a configurable result thumbnail field, an auto-suggesting Facet Mapping form that applies instantly without drush cr, and a full multi-valued field pipeline.</description>
<category>Drupal Module</category>
<pubDate>Fri, 24 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search WordPress Plugin 1.0.19: Facet Mapping Overhaul and Stability Fixes</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-19-facet-mapping-overhaul</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-19-facet-mapping-overhaul</guid>
<description>WordPress plugin 1.0.19 is live on WordPress.org, with a Facet Mapping overhaul and a fix for a sanitize callback that was silently discarding saved facet mapping rows.</description>
<category>WordPress Plugin</category>
<pubDate>Fri, 24 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Admin Layout Tidy-Up: Search Mode Options on a Single Row and Crawler Controls in a Uniform Grid</title>
<link>https://opensolr.com/changelog/entry/index-settings-search-mode-radios-single-row</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/index-settings-search-mode-radios-single-row</guid>
<description>Two layout corrections in the admin panel: the five Search Mode radio buttons in Index Settings now fit on one row, and the Web Crawler control buttons are equal width in a two-column grid.</description>
<category>Admin</category>
<pubDate>Wed, 22 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for WordPress 1.0.7 Adds the Lexical Only Search Mode</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-7-lexical-only-search-mode</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-7-lexical-only-search-mode</guid>
<description>Opensolr Search for WordPress 1.0.7 adds the Lexical Only search mode, matching the Opensolr admin and the Drupal module: an explicit opt-out from vector search, with no embedding API call made.</description>
<category>WordPress</category>
<pubDate>Wed, 22 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 3.5.0 Adds the Lexical Only Search Mode</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-5-0-lexical-only-search-mode</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-5-0-lexical-only-search-mode</guid>
<description>Opensolr Search for Drupal 3.5.0 adds the Lexical Only search mode, matching the option in the Opensolr admin. It skips the embedding request entirely and auto-zeroes the Minimum Relevance Score.</description>
<category>Drupal</category>
<pubDate>Wed, 22 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Lexical Only Search Mode, Readable Locale Facet, and Five Search Fixes</title>
<link>https://opensolr.com/changelog/entry/lexical-only-search-mode-search-tuning</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/lexical-only-search-mode-search-tuning</guid>
<description>A new Lexical Only search mode skips embeddings entirely for deterministic BM25 ranking. The Locale facet now shows flags and language names instead of raw codes, and five search bugs were fixed across Opensolr, the Drupal module and the WordPress plugin.</description>
<category>Search</category>
<pubDate>Wed, 22 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for WordPress 1.0.5 Adds the Minimum Relevance Score Slider</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-1-0-5-minimum-relevance-score-slider</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-1-0-5-minimum-relevance-score-slider</guid>
<description>Opensolr Search for WordPress 1.0.5 adds the Minimum Relevance Score slider to Search Tuning, dropping low-scoring hybrid hits from both results and facet counts. Steps of 0.1, default 0.3.</description>
<category>WordPress</category>
<pubDate>Tue, 21 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 3.4.0 Adds the Minimum Relevance Score Slider</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-4-0-minimum-relevance-score-slider</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-4-0-minimum-relevance-score-slider</guid>
<description>Version 3.4.0 brings the Minimum Relevance Score slider to Search Tuning, dropping low-scoring hybrid hits from both results and facet counts.</description>
<category>Drupal</category>
<pubDate>Tue, 21 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Tuning: Minimum Relevance Score Slider, a Search Operators Help Panel, Cleaner Pagination and a Minimum Match Save Fix</title>
<link>https://opensolr.com/changelog/entry/minimum-relevance-score-slider-search-tuning</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/minimum-relevance-score-slider-search-tuning</guid>
<description>A new Minimum Relevance Score slider drops low-scoring hybrid hits, a Search Operators help panel explains phrase, required and excluded terms, search pagination moves into the results column, and custom Minimum Match values now save correctly.</description>
<category>Search</category>
<pubDate>Tue, 21 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Analytics: Faster Dashboards, a 30-Day Default Window, and CSV Export on Every Table</title>
<link>https://opensolr.com/changelog/entry/query-analytics-30-minute-cache-30-day-window</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/query-analytics-30-minute-cache-30-day-window</guid>
<description>Query Analytics loads noticeably faster, defaults to a 30-day window instead of 10 days, and every dashboard table now has an Export CSV button.</description>
<category>Analytics</category>
<pubDate>Tue, 21 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>WordPress Plugin: Sitemap Registration Fix, Setup Progress Modal and WooCommerce Meta Tags</title>
<link>https://opensolr.com/changelog/entry/wordpress-plugin-sitemap-fix-setup-modal-woocommerce-meta</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-plugin-sitemap-fix-setup-modal-woocommerce-meta</guid>
<description>Save &amp;amp; Connect was not registering the sitemap URL with the crawler, and Save &amp;amp; Start Fresh was not deleting the previous index. Setup now shows a full-screen progress modal, and WooCommerce products get richer meta tags.</description>
<category>WordPress</category>
<pubDate>Fri, 10 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 3.3.3: Sitemap Registration on Save and Connect Fixed</title>
<link>https://opensolr.com/changelog/entry/drupal-module-3-3-3-sitemap-registration-save-connect-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-3-3-3-sitemap-registration-save-connect-fix</guid>
<description>The sitemap URL is now registered with the crawler on every Save &amp;amp; Connect and Save &amp;amp; Start Fresh, and Save &amp;amp; Start Fresh now deletes the previous index before creating the new one.</description>
<category>Drupal</category>
<pubDate>Fri, 10 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hybrid Search Relevance: Lexical Field Boosts Zeroed in Vector Mode</title>
<link>https://opensolr.com/changelog/entry/hybrid-search-lexical-field-boosts-zeroed-vector-mode</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hybrid-search-lexical-field-boosts-zeroed-vector-mode</guid>
<description>In vector hybrid mode, lexical field weight boosts are now zeroed so semantic similarity drives the ranking. Field weights still apply when search falls back to pure lexical mode.</description>
<category>Search</category>
<pubDate>Fri, 10 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Data Ingestion: Empty API Responses Fixed, Duplicate Documents Eliminated, Richer Enrichment and a Queue Dashboard Built for Scale</title>
<link>https://opensolr.com/changelog/entry/data-ingestion-api-php-8-empty-responses-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/data-ingestion-api-php-8-empty-responses-fix</guid>
<description>Four changes to Data Ingestion: a PHP 8 fault that made every endpoint return empty responses is fixed, URI normalization stops the crawler and the API creating duplicate documents, enrichment now uses structured text and longer sentiment input, and the queue dashboard handles thousands of jobs.</description>
<category>Data Ingestion</category>
<pubDate>Thu, 09 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hosted Search Page: Query Elevation Controls Restored, Results Count Moved Under the Search Bar</title>
<link>https://opensolr.com/changelog/entry/query-elevation-controls-hosted-search-instant-effect</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/query-elevation-controls-hosted-search-instant-effect</guid>
<description>Query Elevation controls are back on the hosted search page and take effect immediately, and the results count now sits directly under the search bar with the response time shown in seconds.</description>
<category>Search</category>
<pubDate>Thu, 09 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Query Elevation: REMOVE Button No Longer Appears on Results With No Elevation Rules</title>
<link>https://opensolr.com/changelog/entry/drupal-query-elevation-remove-button-without-rules-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-query-elevation-remove-button-without-rules-fix</guid>
<description>Fixed the Query Elevation REMOVE button showing on results that have no elevation rules. Visibility is now driven by CSS class specificity instead of inline styles.</description>
<category>Drupal</category>
<pubDate>Thu, 09 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>WordPress Search Plugin Documentation: 17-Page Guide From Setup to WooCommerce</title>
<link>https://opensolr.com/changelog/entry/wordpress-search-plugin-17-page-documentation</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/wordpress-search-plugin-17-page-documentation</guid>
<description>The WordPress Search Plugin documentation is a 17-page guide covering installation and setup, the data crawler, data ingestion, facets, search tuning, AI features and WooCommerce.</description>
<category>Documentation</category>
<pubDate>Thu, 09 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for WordPress: Free AI Hybrid Search Plugin, With a 50% Partner Discount</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-wordpress-plugin-launch</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-wordpress-plugin-launch</guid>
<description>Opensolr Search for WordPress is a free plugin that replaces default WordPress search with hybrid vector and keyword search, facets, autocomplete, analytics, elevation and full WooCommerce support. Plugin users also qualify for the Partner Program: 50% off any small or medium plan for a year.</description>
<category>WordPress</category>
<pubDate>Thu, 09 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Facets: Hierarchical Drill-Down From JSON-LD Breadcrumbs, Per-Facet Thresholds and Safari Fixes</title>
<link>https://opensolr.com/changelog/entry/drupal-hierarchical-drilldown-facets-json-ld-breadcrumbs</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-hierarchical-drilldown-facets-json-ld-breadcrumbs</guid>
<description>Drill-down facets built automatically from JSON-LD breadcrumbs, a per-facet minimum count, instant CSS tooltips, a set of Safari and iOS fixes, and a new Partner Program.</description>
<category>Drupal</category>
<pubDate>Sat, 04 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Dates: Strict UTC Conversion, a Safety Gate, and Extraction From Date-Related CSS Classes</title>
<link>https://opensolr.com/changelog/entry/web-crawler-date-timezone-utc-conversion-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-date-timezone-utc-conversion-fix</guid>
<description>Dates carrying a timezone offset such as +03:00 are now strictly converted to UTC before indexing, and anything that still does not match the Solr format is dropped rather than failing the index. The crawler also extracts dates from date-related CSS classes on sites with no JSON-LD or meta tags.</description>
<category>Web Crawler</category>
<pubDate>Sat, 04 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Thousands Separators and Smart Decimals Across Facet Sliders, Filter Pills and Price Tooltips</title>
<link>https://opensolr.com/changelog/entry/facet-slider-thousands-separators-decimals</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/facet-slider-thousands-separators-decimals</guid>
<description>Numbers in facet slider inputs, active filter pills and price topbar slider tooltips now use thousands separators, with two decimals on float fields and none on integers.</description>
<category>Search</category>
<pubDate>Sat, 04 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Homepage Drupal Card Rewritten, Plus a Vector Search E-Commerce Demo</title>
<link>https://opensolr.com/changelog/entry/homepage-drupal-card-vector-search-ecommerce-demo</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/homepage-drupal-card-vector-search-ecommerce-demo</guid>
<description>The homepage Drupal card now showcases the Opensolr Search for Drupal module, and a vector search e-commerce demo has been added to the live demos section.</description>
<category>Website</category>
<pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Skips Embedding Generation on Indexes Without AI Vector Access</title>
<link>https://opensolr.com/changelog/entry/web-crawler-skips-embeddings-without-vector-access</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-skips-embeddings-without-vector-access</guid>
<description>The Web Crawler now respects the package vector access flag. Indexes without AI features no longer generate embeddings during a crawl, which saves GPU resources and speeds up indexing.</description>
<category>Web Crawler</category>
<pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Facet Filters Admin Panel: Map Solr Schema Fields to List, Slider, and Date Widgets</title>
<link>https://opensolr.com/changelog/entry/search-facet-filters-admin-panel-configuration</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-facet-filters-admin-panel-configuration</guid>
<description>A Search Facet Filters section in the admin panel discovers all indexed fields via the Solr schema and lets you map them as list, slider or date range widgets, with drag-to-reorder. Embeddable search supports facets too, via data-sidebar=&quot;on&quot;.</description>
<category>Control Panel</category>
<pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>GPU Priority Queue Puts Search Embeddings Ahead of Crawler Batch Jobs</title>
<link>https://opensolr.com/changelog/entry/gpu-priority-queue-search-embeddings-first</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/gpu-priority-queue-search-embeddings-first</guid>
<description>User-facing search requests now jump ahead of background crawler batch jobs on the GPU, with a configurable timeout that falls back to lexical search instantly if the GPU is busy.</description>
<category>Performance &amp; SEO</category>
<pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>AI and Vector Features Now Gated per Package With Friendly Upgrade Prompts</title>
<link>https://opensolr.com/changelog/entry/ai-vector-features-gated-per-package</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-vector-features-gated-per-package</guid>
<description>AI Hints, AI Reader, Vector Embeddings and Hybrid Search are now gated per package, and indexes without vector access get a clear upgrade prompt instead of a generic error. Lexical keyword search still works on every plan.</description>
<category>API</category>
<pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Facet Filter Sidebar, Fixed Search Header, Loading Overlay and a More Reliable Highlighter</title>
<link>https://opensolr.com/changelog/entry/facet-filter-sidebar-category-price-date-ranges</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/facet-filter-sidebar-category-price-date-ranges</guid>
<description>A new facet filter sidebar lets visitors narrow results by category, price, date and any structured field. The search header now stays fixed while scrolling, transitions show a loading overlay, and highlighting works in short fields such as titles.</description>
<category>Search</category>
<pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Fixed: The Search Box No Longer Shows Solr-Escaped Apostrophes Back to the User</title>
<link>https://opensolr.com/changelog/entry/search-box-apostrophes-solr-escaped-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-box-apostrophes-solr-escaped-fix</guid>
<description>Queries containing apostrophes — &quot;don&apos;t&quot;, &quot;it&apos;s&quot;, &quot;O&apos;Brien&quot; — were echoed back into the search box in their Solr-escaped form. The box now shows the clean, unescaped query.</description>
<category>Search</category>
<pubDate>Tue, 31 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module: Multilingual Meta Tags and JSON-LD, Live Document Counts, Language Selector Order</title>
<link>https://opensolr.com/changelog/entry/drupal-multilingual-meta-tags-json-ld-facets</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-multilingual-meta-tags-json-ld-facets</guid>
<description>Opensolr Search for Drupal gains full multilingual meta tags and JSON-LD, live document counts next to each content type in the admin tabs, and a language selector that shows the active language first.</description>
<category>Drupal</category>
<pubDate>Sun, 29 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal: Stop Crawl Button, Currency Symbols, Query Embeddings</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-drupal-stop-crawl-currency-embeddings</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-drupal-stop-crawl-currency-embeddings</guid>
<description>Opensolr Search for Drupal gains a Stop Crawl button, price display with currency symbols, and optimised query embeddings for better search relevance.</description>
<category>Drupal</category>
<pubDate>Sat, 28 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>New is_query Parameter on the Embed APIs for Optimised Retrieval Vectors</title>
<link>https://opensolr.com/changelog/entry/is-query-parameter-embed-api-retrieval-vectors</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/is-query-parameter-embed-api-retrieval-vectors</guid>
<description>Set is_query=1 when embedding a search query to get a vector optimised for retrieval, on both the embed and batch embed endpoints.</description>
<category>API</category>
<pubDate>Sat, 28 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler: Stop Crawl Button, Instantly Applied Settings, Core-Wide Thread Limits, Cleaner Descriptions and a Buffer Fix</title>
<link>https://opensolr.com/changelog/entry/web-crawler-stop-crawl-button</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-stop-crawl-button</guid>
<description>Five crawler changes: a new Stop Crawl button that halts running processes without losing the schedule, settings that apply to the active schedule immediately, max_threads enforced across all start URLs, description extraction that no longer picks up CSS or JavaScript, and a fix for a Solr buffer that could stick after a stopped crawl.</description>
<category>Web Crawler</category>
<pubDate>Sat, 28 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Instruction-Tuned Query Prefixes Lift Vector Recall 5-15%, and Price Badges Show Currency Symbols</title>
<link>https://opensolr.com/changelog/entry/vector-search-instruction-tuned-prefixes-5-15-recall</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/vector-search-instruction-tuned-prefixes-5-15-recall</guid>
<description>The embedding model now uses instruction-tuned prefixes that optimise query vectors for retrieval, worth 5&amp;ndash;15% better recall on natural language queries and stronger cross-language matching. Price badges also show currency symbols instead of raw codes.</description>
<category>Search</category>
<pubDate>Sat, 28 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Drupal Module Security Audit: 35+ XSS, CSRF and Solr Injection Issues Fixed</title>
<link>https://opensolr.com/changelog/entry/drupal-module-security-audit-35-issues-fixed</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-module-security-audit-35-issues-fixed</guid>
<description>A three-round security audit of the Drupal module found and fixed more than 35 issues, covering XSS in AI streaming output, Solr injection on range filters and facet values, CSRF on admin write endpoints, and safe URL generation under CLI and cron.</description>
<category>Security</category>
<pubDate>Wed, 25 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Real-Time Drupal Content Sync, Per-Document Duplicate Handling and Full UTF-8 Safety</title>
<link>https://opensolr.com/changelog/entry/drupal-real-time-content-sync-node-save-ingestion-api</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/drupal-real-time-content-sync-node-save-ingestion-api</guid>
<description>Drupal node saves can now be pushed to the index the moment they happen, the Ingestion API skips duplicate documents instead of rejecting the whole batch, and the enrichment pipeline is safe for CJK, emoji and accented text.</description>
<category>Data Ingestion</category>
<pubDate>Wed, 25 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search for Drupal 2.0: Real-Time Sync, Async Bulk Ingestion to 500K+ Documents, and Contextual Help</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-drupal-2-0-real-time-sync-bulk-ingestion</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-drupal-2-0-real-time-sync-bulk-ingestion</guid>
<description>Opensolr Search for Drupal 2.0 adds the Data Ingestion API, real-time sync on every node save and delete, async bulk ingestion via Drupal cron that scales past 500,000 documents, full CJK/UTF-8 safety and a three-round security audit. All ten admin tabs now link to the relevant documentation.</description>
<category>Drupal</category>
<pubDate>Wed, 25 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hybrid Search Live Demo: Try Vector and Keyword Search Without Signing Up</title>
<link>https://opensolr.com/changelog/entry/hybrid-search-live-demo-vector-keyword-no-signup</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hybrid-search-live-demo-vector-keyword-no-signup</guid>
<description>The Hybrid Search Live Demo lets you try vector and keyword search, facets, autocomplete, AI Hints and the rest of the search features on a real index, without signing up.</description>
<category>Search</category>
<pubDate>Mon, 23 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Six New Guides: Five Solr Error Troubleshooters and a MySQL Import Walkthrough</title>
<link>https://opensolr.com/changelog/entry/five-solr-error-guides-mergeaborted-parseexception-geo</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/five-solr-error-guides-mergeaborted-parseexception-geo</guid>
<description>Five new Solr error troubleshooting guides — MergeAbortedException, invalid geo coordinates, ParseException, cannot unload non-existent core and ConcurrentModificationException — each with root cause analysis, diagrams and step-by-step fixes, plus a new MySQL Import guide.</description>
<category>Documentation</category>
<pubDate>Mon, 23 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Reindex All Button: Re-Queue Every Crawled URL in One Click</title>
<link>https://opensolr.com/changelog/entry/web-crawler-reindex-all-button-one-click</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-reindex-all-button-one-click</guid>
<description>A Reindex All button in the Web Crawler panel moves every previously crawled URL back into the crawl queue for a full re-crawl on demand.</description>
<category>Web Crawler</category>
<pubDate>Mon, 23 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Search Drupal Module Launches on Drupal.org With Hybrid Vector Search</title>
<link>https://opensolr.com/changelog/entry/opensolr-search-drupal-module-drupal-org-launch</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-search-drupal-module-drupal-org-launch</guid>
<description>Opensolr Search is now an official module on Drupal.org: hybrid vector and keyword search, facets, autocomplete, AI Hints, AI Reader, spellcheck, Query Elevation, analytics and a sitemap generator, with no dependency on Search API.</description>
<category>Drupal</category>
<pubDate>Mon, 23 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Keep Index Fresh: Scheduled Re-Crawls and Automatic Removal of Dead Pages</title>
<link>https://opensolr.com/changelog/entry/web-crawler-keep-index-fresh-scheduled-recrawls</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-keep-index-fresh-scheduled-recrawls</guid>
<description>Keep Index Fresh re-crawls previously indexed pages on a schedule of every 7 to 365 days, updating content and prices. Pages that return a non-200 status are now removed from the index automatically.</description>
<category>Web Crawler</category>
<pubDate>Fri, 20 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Fresh Mode Becomes a 2 to 365 Day Date Window, Plus a Bigger Mobile Clear Button and an Autocomplete Highlight Fix</title>
<link>https://opensolr.com/changelog/entry/fresh-mode-date-window-filter-2-365-days</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/fresh-mode-date-window-filter-2-365-days</guid>
<description>Fresh mode is now a date window filter of 2 to 365 days rather than a boost factor. Alongside it, the search clear button is larger on mobile and autocomplete no longer highlights one and two character stopwords.</description>
<category>Search</category>
<pubDate>Wed, 18 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Spellcheck Corrects Every Misspelled Word, and Relevancy Defaults Move to Flexible Minimum Match</title>
<link>https://opensolr.com/changelog/entry/did-you-mean-spellcheck-corrects-all-words</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/did-you-mean-spellcheck-corrects-all-words</guid>
<description>&quot;Did you mean?&quot; now corrects all misspelled words in a query rather than just one, and shows the full corrected query. Relevancy defaults also move to Flexible minimum match, returning more results for longer natural-language searches.</description>
<category>Search</category>
<pubDate>Tue, 17 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>New Solr Error Troubleshooting Guides: SAXParseException, NumberFormatException and More</title>
<link>https://opensolr.com/changelog/entry/solr-error-troubleshooting-guides-expansion</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/solr-error-troubleshooting-guides-expansion</guid>
<description>A documentation expansion across Solr error troubleshooting: five new in-depth guides, each with root cause analysis, diagrams and step-by-step fixes, all linked automatically from the Error Audit.</description>
<category>Documentation</category>
<pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Smart Fix Suggestions: Error Audit Links Each Error to the Right FAQ Automatically</title>
<link>https://opensolr.com/changelog/entry/error-audit-smart-fix-suggestions-faq-links</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/error-audit-smart-fix-suggestions-faq-links</guid>
<description>The Error Audit table now matches each error against the Opensolr documentation and links the FAQ page that explains how to fix it. Works in the per-index audit and in the Weekly Error Digest emails.</description>
<category>Control Panel</category>
<pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Weekly Error Digest, Communications Preferences, and a More Reliable Index Reset</title>
<link>https://opensolr.com/changelog/entry/weekly-error-digest-monday-email-top-index-errors</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/weekly-error-digest-monday-email-top-index-errors</guid>
<description>A Monday email now summarises the top errors across your indexes, a new Communications page lets you turn it off, index reset verifies the index is really empty and falls back to a hard reset, and Error Audit shows readable root causes instead of Java stack traces.</description>
<category>Control Panel</category>
<pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Error Audit: Seven Days of Searchable Solr Error History in the Control Panel</title>
<link>https://opensolr.com/changelog/entry/error-audit-7-day-searchable-solr-error-history</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/error-audit-7-day-searchable-solr-error-history</guid>
<description>Every Solr error your index hits is now captured, classified and kept for seven days in a dedicated searchable index. The new Error Audit dashboard adds an error rate chart, breakdowns, full-text search across stack traces and plain-English root cause explanations.</description>
<category>Control Panel</category>
<pubDate>Thu, 12 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Turbo Indexer 2.5.1: Forked Workers Now Inherit the Drush URI Flag Correctly</title>
<link>https://opensolr.com/changelog/entry/turbo-indexer-2-5-1-workers-inherit-drush-uri-flag</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/turbo-indexer-2-5-1-workers-inherit-drush-uri-flag</guid>
<description>Forked worker processes did not inherit --uri from the parent Drush process, so URL-dependent tokens resolved against http://default. Fixed in 2.5.1; reindex affected indexes after updating.</description>
<category>Turbo Indexer</category>
<pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Analytics Tabs Fixed: Load Without Elevation Rules, and No More 403 via Shared Search Links</title>
<link>https://opensolr.com/changelog/entry/query-analytics-tabs-load-without-elevation-rules</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/query-analytics-tabs-load-without-elevation-rules</guid>
<description>The No Results and Click Analytics tabs now load on indexes without Elevation Rules enabled, and no longer return 403 when Query Analytics is reached through a shared search link.</description>
<category>Query Analytics</category>
<pubDate>Tue, 10 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Data Ingestion API Docs: Full PHP, Python and cURL Examples, Plus content_type Guidance</title>
<link>https://opensolr.com/changelog/entry/data-ingestion-api-docs-php-python-curl-examples</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/data-ingestion-api-docs-php-python-curl-examples</guid>
<description>The Data Ingestion API docs now carry complete PHP, Python and cURL examples for both submission methods, with error handling and job status polling, and a full content_type field reference.</description>
<category>Documentation</category>
<pubDate>Sun, 08 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Data Ingestion Queue: Job Detail Modal, Run Now and Retry Controls, Exact Solr Errors and Two API Fixes</title>
<link>https://opensolr.com/changelog/entry/data-ingestion-job-detail-modal-status-errors-payload</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/data-ingestion-job-detail-modal-status-errors-payload</guid>
<description>The Data Ingestion Queue gains a Job Detail modal, per-job, per-index and per-user Run Now controls, one-click Retry, and exact Solr errors for failed documents. Two Data Ingestion API bugs — content_type defaults and the leaking rtf flag — are fixed.</description>
<category>Data Ingestion</category>
<pubDate>Sun, 08 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>The Data Ingestion API: Push 50 Documents per Batch, Extract PDF and Office Files, Upload JSON Payloads, and Global Rate Limits</title>
<link>https://opensolr.com/changelog/entry/data-ingestion-api-push-50-documents-per-batch</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/data-ingestion-api-push-50-documents-per-batch</guid>
<description>The Data Ingestion API arrives: push up to 50 documents per batch with automatic enrichment, extract text from PDF and Office files with rtf:true, upload large batches as a JSON file, with URI now mandatory and document IDs generated as md5 of the URI. Global API rate limits of 30 requests per minute and 500 per hour are now enforced.</description>
<category>API</category>
<pubDate>Sun, 08 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Two New Account Pages: API Usage Dashboard and Data Ingestion Queue</title>
<link>https://opensolr.com/changelog/entry/api-usage-dashboard-rate-limit-gauges-endpoint-breakdown</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/api-usage-dashboard-rate-limit-gauges-endpoint-breakdown</guid>
<description>Two new pages under Account: an API Usage dashboard with live rate-limit gauges and monthly history, and a Data Ingestion Queue with live progress bars and pause, resume and stop controls.</description>
<category>Account</category>
<pubDate>Sun, 08 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Tuning: Six Per-Index Relevancy Controls With No Reindexing Required</title>
<link>https://opensolr.com/changelog/entry/search-tuning-six-per-index-relevancy-controls</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/search-tuning-six-per-index-relevancy-controls</guid>
<description>Search Tuning adds six per-index relevancy controls to Index Settings. Each index is tuned independently, changes save automatically, and they take effect on the next search — no reindexing and no restart.</description>
<category>Search</category>
<pubDate>Sun, 08 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Analytics Gains a No-Results Dashboard, Click Analytics With CTR, and Bulk Query Deletion</title>
<link>https://opensolr.com/changelog/entry/no-results-dashboard-zero-result-searches-query-analytics</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/no-results-dashboard-zero-result-searches-query-analytics</guid>
<description>Three additions to Query Analytics: a No-Results Dashboard counting zero-result searches by unique IP, Click Analytics with CTR tracking in three views, and bulk deletion of queries by checkbox.</description>
<category>Web Crawler</category>
<pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Elevation Arrives: Pin, Exclude and Reorder Results From the Search UI, With Global Rules and a Tabbed Query Analytics App</title>
<link>https://opensolr.com/changelog/entry/query-elevation-pin-exclude-search-ui-launch</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/query-elevation-pin-exclude-search-ui-launch</guid>
<description>Query Elevation lets you pin, exclude and reorder search results from the Search UI, per query or globally. Query Statistics becomes a tabbed Query Analytics &amp;amp; Tools application, pin and exclude are now mutually exclusive and colour-coded, and a bug that applied only the last of several pinned documents is fixed.</description>
<category>Search</category>
<pubDate>Sat, 07 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Add New Index Gets Sidebar Filters and a Compact Layout, Plus an Error Log Accuracy Fix</title>
<link>https://opensolr.com/changelog/entry/add-new-index-sidebar-filter-panel</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/add-new-index-sidebar-filter-panel</guid>
<description>The Add New Index page replaces dropdown menus with an always-visible sidebar filter panel and a tighter layout, and the Error Log now shows each distinct root cause instead of merging different errors together.</description>
<category>Control Panel</category>
<pubDate>Fri, 06 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Reliable Text Extraction for DOCX, XLSX and PPTX Files in Document Indexing</title>
<link>https://opensolr.com/changelog/entry/document-indexing-docx-xlsx-pptx-extraction-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/document-indexing-docx-xlsx-pptx-extraction-fix</guid>
<description>DOCX, DOC, XLSX, XLS and PPTX files now extract properly, including tables, headers, footers and speaker notes. Previously many were indexed with empty text.</description>
<category>Web Crawler</category>
<pubDate>Fri, 06 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler: Choose Curl or Chrome as Your Renderer, With Chrome Pages Now Under a Second</title>
<link>https://opensolr.com/changelog/entry/web-crawler-renderer-setting-curl-chrome</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-renderer-setting-curl-chrome</guid>
<description>A new Renderer setting lets you pick Curl for speed or Chrome for JavaScript-rendered sites. Chrome pages now complete in about 0.5&amp;ndash;1s instead of 2&amp;ndash;25s, and Crawl Stats gains a Clear button for 4xx and 5xx errors.</description>
<category>Web Crawler</category>
<pubDate>Thu, 05 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler: Cleaner Tag Fields for Autocomplete, and Failed Solr Batches Retried</title>
<link>https://opensolr.com/changelog/entry/crawler-tag-fields-autocomplete-spellcheck-cleanup</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/crawler-tag-fields-autocomplete-spellcheck-cleanup</guid>
<description>Crawler tag fields are now cleaned before they are stored, so autocomplete and spellcheck suggestions are no longer noisy, and documents in a failed Solr batch insert are retried on the next flush instead of being lost.</description>
<category>Web Crawler</category>
<pubDate>Wed, 04 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Result Fixes: Highlighting on Boolean Queries, and No More Jan 01 1970 Dates</title>
<link>https://opensolr.com/changelog/entry/title-description-highlighting-boolean-queries-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/title-description-highlighting-boolean-queries-fix</guid>
<description>Titles and descriptions are now highlighted on queries containing AND or OR, and the date badge is hidden entirely when a document has no real creation date.</description>
<category>Search</category>
<pubDate>Wed, 04 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>API Rate Limiting Goes Live: Per-User and Per-IP Limits With 429 Responses</title>
<link>https://opensolr.com/changelog/entry/api-rate-limiting-per-user-per-ip-429</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/api-rate-limiting-per-user-per-ip-429</guid>
<description>API rate limiting is now active. Requests are tracked per user and per IP against per-minute and per-hour limits; exceeding one returns a 429 with a Retry-After header. Monthly counters are stored so you can review usage over time.</description>
<category>API</category>
<pubDate>Tue, 03 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Resume: Sitemap Re-Discovery, Empty Queues and Automatic Stale Lock Cleanup</title>
<link>https://opensolr.com/changelog/entry/web-crawler-resume-child-sitemap-rediscovery</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-resume-child-sitemap-rediscovery</guid>
<description>Resume now always launches the crawler, even on an empty queue, re-fetches every child sitemap to pick up new URLs, and clears stale lock files left behind by an interrupted crawl.</description>
<category>Web Crawler</category>
<pubDate>Mon, 02 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>New Troubleshooting Guide: The Solr &quot;Document Contains at Least One Immense Term&quot; Error</title>
<link>https://opensolr.com/changelog/entry/solr-immense-term-error-troubleshooting-guide</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/solr-immense-term-error-troubleshooting-guide</guid>
<description>A new guide for the Solr immense term error explains why untokenized field types produce it and gives four fixes, with diagrams, code examples and a section for Drupal and Search API users.</description>
<category>Documentation</category>
<pubDate>Mon, 02 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>A New Web Crawler Search UI: AI Hints, Dark Mode, Infinite Scroll, Embeddable Mode, OG Thumbnails and Price, Language, Source and Sentiment Filters</title>
<link>https://opensolr.com/changelog/entry/ai-hints-streaming-summaries-search-results</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/ai-hints-streaming-summaries-search-results</guid>
<description>A large release for the Web Crawler Search UI: streaming AI Hints grounded in your indexed content, a dark theme, infinite scroll by default, full-width and embeddable layouts, Open Graph thumbnails, and filtering and sorting by price, language, source domain, freshness and sentiment. Plus a fix for blank result descriptions.</description>
<category>Search</category>
<pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Flush to Solr Now Reports Flushed Documents and Commits Immediately</title>
<link>https://opensolr.com/changelog/entry/web-crawler-flush-to-solr-reports-commits</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-flush-to-solr-reports-commits</guid>
<description>The Flush to Solr button always reported an empty buffer even when documents were flushed. It now reports the real count and commits automatically, so flushed documents are searchable at once.</description>
<category>Web Crawler</category>
<pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Schedule Optimize: Auto-Optimise Your Opensolr Index Every 2 to 365 Days</title>
<link>https://opensolr.com/changelog/entry/schedule-optimize-index-2-365-days</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/schedule-optimize-index-2-365-days</guid>
<description>Set your index to optimise on a recurring schedule of 2 to 365 days, and get live index stats plus running-optimisation detection from the Optimize button.</description>
<category>Index Management</category>
<pubDate>Fri, 27 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>New API Docs for Pausing, Resuming and Checking the Web Crawler, Plus Updated Terms and Privacy Policy</title>
<link>https://opensolr.com/changelog/entry/api-docs-pause-resume-check-web-crawler</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/api-docs-pause-resume-check-web-crawler</guid>
<description>Three new API documents cover pausing the web crawler, resuming it, and checking whether it is running, each with endpoint, parameters and copy-paste examples. The Terms &amp;amp; Conditions and Privacy Policy pages have also been rewritten for clarity.</description>
<category>Website</category>
<pubDate>Fri, 27 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Pause and Resume Controls, a Three-State Status Badge and Faster Batched Indexing</title>
<link>https://opensolr.com/changelog/entry/web-crawler-pause-resume-controls</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-pause-resume-controls</guid>
<description>The Web Crawler gains Pause and Resume controls that keep your cron schedule, a status badge that distinguishes Running, Paused and Stopped, a clear message when you resume an empty queue, and faster indexing through larger Solr batches.</description>
<category>Web Crawler</category>
<pubDate>Fri, 27 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Analytics Chart Renders Up to 5,000 Points, and Full Request Shows the Complete URL</title>
<link>https://opensolr.com/changelog/entry/analytics-chart-5000-data-points</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/analytics-chart-5000-data-points</guid>
<description>The analytics chart no longer refuses to draw beyond 100 data points, and the Full Request column in Query Analytics now captures the entire Solr query string rather than only the first parameter.</description>
<category>Analytics</category>
<pubDate>Fri, 27 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Developer Guide: A Full Docs Hub With Index Fields, the Solr API and Code Examples</title>
<link>https://opensolr.com/changelog/entry/web-crawler-developer-guide-docs-hub</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-developer-guide-docs-hub</guid>
<description>A complete Web Crawler developer documentation hub is now live under Docs &amp;gt; FAQ, covering index fields, every Solr API parameter, and copy-paste code examples in five languages. The Solr Environment filter on the Opensolr Index list also stops resetting itself.</description>
<category>Website</category>
<pubDate>Thu, 26 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Hybrid Vector and Keyword Search Verified on Live Indexes, With Sharper Result Snippets</title>
<link>https://opensolr.com/changelog/entry/hybrid-vector-keyword-search-verified-live-indexes</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hybrid-vector-keyword-search-verified-live-indexes</guid>
<description>Hybrid search has been tested across live indexes with real-world queries, and result snippets are now shorter — the highlighter picks the most relevant sentence around your terms instead of dumping a wall of text.</description>
<category>Search</category>
<pubDate>Wed, 25 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Web Crawler Dual-Extraction Strategy Captures More Text From JavaScript-Heavy Pages</title>
<link>https://opensolr.com/changelog/entry/web-crawler-dual-extraction-javascript-pages</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/web-crawler-dual-extraction-javascript-pages</guid>
<description>The crawler now runs two independent text extraction engines and keeps whichever captures more real content, and detects and renders framework-rendered pages automatically.</description>
<category>Web Crawler</category>
<pubDate>Wed, 25 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Homepage Slideshow Fix: Slides Now Glide Smoothly Instead of Flashing</title>
<link>https://opensolr.com/changelog/entry/homepage-slideshow-smooth-glide-transition-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/homepage-slideshow-smooth-glide-transition-fix</guid>
<description>The homepage image slideshow now glides each slide to the left instead of switching instantly.</description>
<category>Website</category>
<pubDate>Wed, 25 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Database Import Now Shows the Server&apos;s Real PHP Upload Size Limit</title>
<link>https://opensolr.com/changelog/entry/database-import-real-php-upload-size-limit</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/database-import-real-php-upload-size-limit</guid>
<description>Database Import now reads the actual upload limit from the server&apos;s PHP configuration and, when a file is too large, names the exact value and the PHP-FPM settings to adjust.</description>
<category>Infrastructure</category>
<pubDate>Wed, 25 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Multi-Instance Parallel Indexing, New Drush Stop Controls and Faster Defaults, Plus a Better Index Search</title>
<link>https://opensolr.com/changelog/entry/multi-instance-parallel-indexing-isolated-sessions</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/multi-instance-parallel-indexing-isolated-sessions</guid>
<description>You can now run multiple indexers at once on different servers or indexes, each session fully isolated. drush osstop gains per-server and per-index control, drush ost runs in the background by default, and defaults rise to 10 workers and 200-item batches. The Indexes list also keeps its filter in the URL and works properly on mobile keyboards.</description>
<category>Index Management</category>
<pubDate>Wed, 25 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Analytics: Full Request Inspector, Server-Side Pagination and Filters for Latest Queries</title>
<link>https://opensolr.com/changelog/entry/full-request-inspector-query-analytics</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/full-request-inspector-query-analytics</guid>
<description>Query Analytics. Each row in Latest Queries opens a Full Request Inspector showing every Solr parameter and the raw URL; the table now paginates server-side with query, status and IP filters; and a DataTables parameter bug that produced PHP warnings is fixed.</description>
<category>Analytics</category>
<pubDate>Wed, 25 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Changelog Rebuilt as a Searchable Database-Backed Page, With New SVG Compliance and Review Badges</title>
<link>https://opensolr.com/changelog/entry/changelog-database-backed-page-full-text-search-filters</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/changelog-database-backed-page-full-text-search-filters</guid>
<description>The changelog is now a dynamic, database-backed page with full-text search, filters, sidebar navigation and pagination. The security compliance section and the footer review badges have been rebuilt as inline SVG cards.</description>
<category>Website</category>
<pubDate>Tue, 24 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Index Management Redesign: Config Files Manager, Backup Manager, Merged Index Tools and AJAX Reload, Reset, Commit and Restart</title>
<link>https://opensolr.com/changelog/entry/config-files-manager-redesign-inline-new-file-form</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/config-files-manager-redesign-inline-new-file-form</guid>
<description>A redesign pass across index management: a cleaner Config Files Manager with an inline new file form, upload notes tucked behind an info button, a restyled Backup Manager with backup files and the restore log side by side, Delete By Query merged into a single Index Tools panel, and Reload, Reset, Commit and Restart running via an AJAX modal.</description>
<category>Index Management</category>
<pubDate>Tue, 24 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Query Analytics Now Displays Umlauts and Accented Characters Correctly</title>
<link>https://opensolr.com/changelog/entry/query-analytics-umlauts-accented-characters-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/query-analytics-umlauts-accented-characters-fix</guid>
<description>Special characters in Query Analytics are no longer shown URL-encoded: a query such as W&amp;auml;rmeenergie now reads as itself.</description>
<category>Analytics</category>
<pubDate>Tue, 24 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Batch Embeddings API, Database Export Download Fixes, and Inline Confirmations for HTTP Auth and IP Rules</title>
<link>https://opensolr.com/changelog/entry/batch-embeddings-api-50-texts-per-request</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/batch-embeddings-api-50-texts-per-request</guid>
<description>A new batch embeddings endpoint handles up to 50 texts per request. Database export downloads gain a ready-to-copy wget command and no longer return 403 Forbidden, and saving HTTP Auth credentials or an IP access rule now confirms inline.</description>
<category>Infrastructure</category>
<pubDate>Tue, 24 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Analytics: Readable Search Queries, Parallel Shard Processing and Nine Reporting Fixes</title>
<link>https://opensolr.com/changelog/entry/analytics-parallel-shard-processing-speedup</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/analytics-parallel-shard-processing-speedup</guid>
<description>Analytics now shows the human-readable query behind every request, however complex, translates CMS-generated queries into plain strings, and loads faster through parallel shard processing — together with fixes for numeric-only queries, double UTF-8 encoding, indexing-request correlation and chart labels.</description>
<category>Analytics</category>
<pubDate>Mon, 23 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Pricing Page Structured Data Fix Resolves Google Review Snippet Errors</title>
<link>https://opensolr.com/changelog/entry/pricing-page-structured-data-review-snippet-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/pricing-page-structured-data-review-snippet-fix</guid>
<description>Review snippet errors reported in Google Search Console for the pricing page are resolved: the structured data now uses the correct schema type for rich results.</description>
<category>Performance &amp; SEO</category>
<pubDate>Mon, 23 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Service Status Page: Inflated Downtime Durations Fixed</title>
<link>https://opensolr.com/changelog/entry/service-status-inflated-downtime-durations-fix</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/service-status-inflated-downtime-durations-fix</guid>
<description>The Service Status page was reporting inflated downtime durations &amp;mdash; hundreds of hours in some cases &amp;mdash; for outages that were actually brief. The figures shown are now the real ones.</description>
<category>Infrastructure</category>
<pubDate>Mon, 23 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Search Update: Hybrid Balance Tuning, Visible Relevance Scores, Better AI Summaries, Locale Filter Fix</title>
<link>https://opensolr.com/changelog/entry/hybrid-search-keyword-semantic-balance-tuning</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/hybrid-search-keyword-semantic-balance-tuning</guid>
<description>Hybrid search is better balanced, relevance scores are visible on all result pages, AI summaries are more context-aware, the language and locale filter now filters correctly, and dense vector indexes are recognised automatically.</description>
<category>Search</category>
<pubDate>Sat, 21 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Opensolr Homepage Redesigned: Clean Layout, Step-by-Step How It Works, Live Demos on the Front Page</title>
<link>https://opensolr.com/changelog/entry/opensolr-homepage-redesign-modern-clean-layout</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/opensolr-homepage-redesign-modern-clean-layout</guid>
<description>The homepage has been completely redesigned with a modern, clean layout. It adds a step-by-step How It Works section for new users, puts the live search demos on the front page, and improves mobile responsiveness across all pages.</description>
<category>Website</category>
<pubDate>Fri, 20 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Analytics: Parallel Loading, Numeric Column Sorting and Five Display Fixes</title>
<link>https://opensolr.com/changelog/entry/analytics-parallel-data-processing-faster-loading</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/analytics-parallel-data-processing-faster-loading</guid>
<description>Analytics now loads in parallel, tables sort numerically by dates, hits, sizes and bandwidth, Recent Queries loads even when a data source is down, accented and non-Latin queries display correctly, and two metrics were corrected.</description>
<category>Analytics</category>
<pubDate>Fri, 20 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Manage Your Own SSH Keys Directly From the Opensolr Control Panel</title>
<link>https://opensolr.com/changelog/entry/manage-ssh-keys-opensolr-control-panel</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/manage-ssh-keys-opensolr-control-panel</guid>
<description>Server owners can now manage their own SSH keys directly from the Opensolr control panel.</description>
<category>Infrastructure</category>
<pubDate>Thu, 19 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Structured Data, Social Previews, Faster Pages and Accessibility Work Across the Opensolr Site</title>
<link>https://opensolr.com/changelog/entry/structured-data-blog-faq-rich-google-results</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/structured-data-blog-faq-rich-google-results</guid>
<description>Blog posts and FAQ pages now carry structured data for richer Google results, and shared Opensolr links show proper preview images, titles and descriptions. Alongside: browser caching, minified assets, lazy loading, explicit image dimensions, semantic landmarks, better contrast and alt text on every image.</description>
<category>Performance &amp; SEO</category>
<pubDate>Thu, 19 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Plan Pricing Updated for Rising Infrastructure Costs; Yearly 25% Discount Retired</title>
<link>https://opensolr.com/changelog/entry/plan-pricing-update-yearly-discount-retired</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/plan-pricing-update-yearly-discount-retired</guid>
<description>Plan pricing has been updated to reflect rising infrastructure and operational costs, and the yearly 25% discount has been retired. See the current plan pricing.</description>
<category>Pricing</category>
<pubDate>Sun, 15 Feb 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>Cleaner Pricing Layout With Better Readability for Plan Options</title>
<link>https://opensolr.com/changelog/entry/cleaner-pricing-layout-plan-options-readability</link>
<guid isPermaLink="true">https://opensolr.com/changelog/entry/cleaner-pricing-layout-plan-options-readability</guid>
<description>The pricing page has a cleaner layout, making plan options and pricing details easier to read and compare.</description>
<category>Website</category>
<pubDate>Wed, 21 Jan 2026 00:00:00 +0000</pubDate>
</item>
<item>
<title>AI-API - Search by Image (image_to_text)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/266/ai-api-search-by-image-image_to_text</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/266/ai-api-search-by-image-image_to_text</guid>
<description>Search by image: image_to_text turns an uploaded photo or base64 image into the words that describe it, matched against roughly 51,000 visual concepts, with OCR when the picture is really text and any barcode or QR code decoded into its own field. No new fields, no image vectors, no re-indexing.</description>
<category>AI SERVICES-Vector Embedding API</category>
</item>
<item>
<title>API - Delete a Dedicated Environment</title>
<link>https://opensolr.com/learn/api-cluster-management/265/api-delete-a-dedicated-environment</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-cluster-management/265/api-delete-a-dedicated-environment</guid>
<description>Decommission a dedicated environment with the delete_environment API endpoint: pass the tag from get_env cluster_owned_environments and a background job removes every server, the load balancer and their DNS records. Indexes there are destroyed with it, and shared environments cannot be deleted.</description>
<category>API ENDPOINTS-Cluster Management</category>
</item>
<item>
<title>AI-API - Hybrid Search (embed_and_search)</title>
<link>https://opensolr.com/learn/opensolr-ai-api/264/ai-api-hybrid-search-embed_and_search</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/264/ai-api-hybrid-search-embed_and_search</guid>
<description>embed_and_search does the whole hybrid search in one call: the query is embedded with the e5 model and run on your Opensolr Index as BM25 plus KNN under that index&apos;s saved Search Tuning, returning ranked documents with highlighting, facets and spellcheck. Weights, search_mode and mm are overridable.</description>
<category>AI SERVICES-Vector Embedding API</category>
</item>
<item>
<title>API - Restore a Backup</title>
<link>https://opensolr.com/learn/api-backup-management/263/api-restore-a-backup</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-backup-management/263/api-restore-a-backup</guid>
<description>Roll an Opensolr Index back to a snapshot with the restore_backup API endpoint. Pass a file name from get_backup_files_list plus type=full for data and configuration, or type=conf for config files only. The job is queued and runs within a minute, and a full restore replaces data, it does not merge.</description>
<category>API ENDPOINTS-Backup Management</category>
</item>
<item>
<title>API - Live Streams: Solr Requests and Server Metrics</title>
<link>https://opensolr.com/learn/api-logs-analytics/262/api-live-streams-solr-requests-and-server-metrics</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-logs-analytics/262/api-live-streams-solr-requests-and-server-metrics</guid>
<description>stream_solr_log and stream_server_data keep the HTTP connection open and push one JSON line per tick: the new Solr requests reaching your index, and the CPU, memory, disk and 1, 5 and 15 minute load of its host. Take index_name, interval and max; each line is padded with whitespace, so trim before parsing.</description>
<category>API ENDPOINTS-Logs &amp; Analytics</category>
</item>
<item>
<title>API - Tail the Solr and HTTP Access Logs of an Index</title>
<link>https://opensolr.com/learn/api-logs-analytics/261/api-tail-the-solr-and-http-access-logs-of-an-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-logs-analytics/261/api-tail-the-solr-and-http-access-logs-of-an-index</guid>
<description>tail_access_log returns the raw tail of the Solr log for one index, the warnings, exceptions and slow queries exactly as Solr wrote them, while tail_apache_log returns the HTTP access log sitting in front of it with client IPs, requests and status codes. Both are read only, instant and plain text.</description>
<category>API ENDPOINTS-Logs &amp; Analytics</category>
</item>
<item>
<title>API - Tail the Web Crawler Log</title>
<link>https://opensolr.com/learn/api-web-crawler/260/api-tail-the-web-crawler-log</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/260/api-tail-the-web-crawler-log</guid>
<description>tail_crawl_log API endpoint returns the last lines of the Web Crawler log for an Opensolr Index as plain text in msg, the same output as the Crawler log panel. The fastest way to see why a crawl finished early: max pages limit reached, traffic limit, blocked scope or fetch errors.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Re-queue Crawled URLs for Re-crawling</title>
<link>https://opensolr.com/learn/api-web-crawler/259/api-re-queue-crawled-urls-for-re-crawling</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/259/api-re-queue-crawled-urls-for-re-crawling</guid>
<description>move_done_to_todo API endpoint pushes every already crawled URL from the done queue back into the todo queue, so the next start_crawl refetches and reindexes known pages with no downtime and nothing deleted from Solr. This is what the Drupal and WordPress Reindex buttons call.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Check Crawl Schedule Status</title>
<link>https://opensolr.com/learn/api-web-crawler/258/api-check-crawl-schedule-status</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/258/api-check-crawl-schedule-status</guid>
<description>crawl_schedule_status API endpoint answers whether a recurring Web Crawler schedule exists for an Opensolr Index, returning active true or false. start_crawl creates one unless you pass schedule=no, and stopping the crawler removes it. For running or idle, use crawler_active instead.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Remove a URL from the Crawler Queue (HMAC signed)</title>
<link>https://opensolr.com/learn/api-web-crawler/257/api-remove-a-url-from-the-crawler-queue-hmac-signed</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/257/api-remove-a-url-from-the-crawler-queue-hmac-signed</guid>
<description>delete_crawler_url API endpoint removes a URL from an Opensolr Index Web Crawler seed list and from its done and todo queues, signed with a hex HMAC-SHA256 of url plus core_name. The document already indexed is not deleted; drop it yourself or run a clean crawl. Counts what it removed.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Add a Crawl URL (HMAC signed)</title>
<link>https://opensolr.com/learn/api-web-crawler/256/api-add-a-crawl-url-hmac-signed</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/256/api-add-a-crawl-url-hmac-signed</guid>
<description>add_crawl_url_signed API endpoint adds a seed URL to the Web Crawler of an Opensolr Index and marks it verified in one call, skipping the site ownership check. The signature is a hex HMAC-SHA256 of url plus core_name keyed with your api_key. Used by the Drupal and WordPress plugins.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Enable or Disable Query Elevation</title>
<link>https://opensolr.com/learn/api-index-management/255/api-enable-or-disable-query-elevation</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/255/api-enable-or-disable-query-elevation</guid>
<description>GET or POST elevation_toggle switches Query Elevation on or off for one index. enable=yes adds QueryElevationComponent to solrconfig.xml, the elevator last-component to search.xml, creates elevate.xml when missing and reloads the index; enable=no only clears the flag, so re-enabling is instant. Safe to run twice.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Get Account Summary (HMAC signed)</title>
<link>https://opensolr.com/learn/api-index-management/254/api-get-account-summary-hmac-signed</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/254/api-get-account-summary-hmac-signed</guid>
<description>GET or POST get_account_summary returns plan, price and billing cycle, disk and bandwidth used against plan limits, indexed_docs, Web Crawler caps, max_ai_requests, vector_allowed and crawler_ip in one call signed with hex HMAC-SHA256 of core_name plus email. It powers the Drupal and WordPress Account tab.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Get Vector-Capable Regions</title>
<link>https://opensolr.com/learn/api-index-management/253/api-get-vector-capable-regions</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/253/api-get-vector-capable-regions</guid>
<description>GET vector_regions lists only the Opensolr environments whose Solr version and crawler stack can store dense vector embeddings and run hybrid search. Pass the returned environment value as region to create_index when the index will be used with embed_and_search, Data Ingestion or the Web Crawler.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>How to Add AI Search to Your Website in Minutes (No Code, No OpenAI Key)</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/252/how-to-add-ai-search-to-your-website-in-minutes-no-code-no-openai-key</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/252/how-to-add-ai-search-to-your-website-in-minutes-no-code-no-openai-key</guid>
<description>Put AI site search on any website with no code, no servers and no OpenAI key: point the Opensolr web crawler at your sitemap, get hybrid keyword plus vector search and a RAG API, then wire it up with the embeddable widget, the WordPress plugin, the Drupal module, LangChain, MCP or the REST API.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>Master API Key vs Scoped API Keys — How Opensolr API Access Control Works</title>
<link>https://opensolr.com/learn/security/251/master-api-key-vs-scoped-api-keys-how-opensolr-api-access-control-works</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/251/master-api-key-vs-scoped-api-keys-how-opensolr-api-access-control-works</guid>
<description>Your master Opensolr API key is root level and also becomes the initial HTTP password on every index, so it never goes to a contractor. Scoped keys, created under Account, API Keys, are limited to chosen endpoints and indexes with an optional expiry, returning 403 ERROR_SCOPED_KEY_ENDPOINT_NOT_ALLOWED.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Is there a Laravel Scout driver for Opensolr?</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/250/is-there-a-laravel-scout-driver-for-opensolr</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/250/is-there-a-laravel-scout-driver-for-opensolr</guid>
<description>composer require opensolr/laravel-scout-opensolr and SCOUT_DRIVER=opensolr give Searchable Laravel models semantic relevance: Model::search() runs hybrid BM25 plus kNN on server side embeddings, where() and whereIn() become Solr filters, pagination returns real totals, one Opensolr Index serves all models.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>Does Opensolr integrate with Haystack?</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/249/does-opensolr-integrate-with-haystack</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/249/does-opensolr-integrate-with-haystack</guid>
<description>pip install opensolr-haystack drops OpensolrDocumentStore and OpensolrHybridRetriever into Haystack pipelines with zero embedder components: documents and queries embed server side on GPU while BM25 and kNN scores fuse on managed Apache Solr 9. Duplicate policies, filters and serialization included.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>Does Opensolr work with LlamaIndex?</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/248/does-opensolr-work-with-llamaindex</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/248/does-opensolr-work-with-llamaindex</guid>
<description>pip install llama-index-opensolr makes Opensolr a native LlamaIndex vector store: OpensolrVectorStore and OpensolrEmbedding under llama_index.vector_stores.opensolr, embeddings on our GPUs, VectorStoreQueryMode.HYBRID fusing BM25 and kNN with a tunable alpha, MetadataFilters mapped to Solr filters.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>Can AI agents like Claude or Cursor use Opensolr?</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/247/can-ai-agents-like-claude-or-cursor-use-opensolr</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/247/can-ai-agents-like-claude-or-cursor-use-opensolr</guid>
<description>Claude Desktop, Claude Code, Cursor and Windsurf reach your Opensolr Index through the official Opensolr MCP server, listed in the MCP Registry as com.opensolr. One config entry, uvx opensolr-mcp, hands the agent 8 tools: hybrid BM25 plus kNN search, indexing, grounded RAG answers and index management.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>Does Opensolr work with LangChain?</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/246/does-opensolr-work-with-langchain</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/246/does-opensolr-work-with-langchain</guid>
<description>Opensolr is a native LangChain vector store listed in the official integrations directory: pip install langchain-opensolr gives OpensolrVectorStore and OpensolrEmbeddings, server side GPU embeddings with no OpenAI key, hybrid BM25 plus kNN retrieval, and as_retriever() for any chain, agent or RAG app.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>Evaluating Opensolr for Your Organization: Trial, Pricing, Service Tiers and Vendor Reviews</title>
<link>https://opensolr.com/learn/billing/245/evaluating-opensolr-for-your-organization-trial-pricing-service-tiers-and-vendor-reviews</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/245/evaluating-opensolr-for-your-organization-trial-pricing-service-tiers-and-vendor-reviews</guid>
<description>Evaluating Opensolr for production: free registration with no credit card, an extended trial on request, monthly unit pricing for indexes, disk space and search traffic, AI request allowances and rate limits, prepayment discounts, and when a Resilient Dedicated Cluster with an SLA is the step up.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Solr Search Tuning — Field Weights, Minimum Match and Relevance, Without Editing Configs</title>
<link>https://opensolr.com/learn/opensolr-management-control-panel/244/solr-search-tuning-field-weights-minimum-match-and-relevance-without-editing-configs</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-management-control-panel/244/solr-search-tuning-field-weights-minimum-match-and-relevance-without-editing-configs</guid>
<description>Repair relevance from the Opensolr Search Tuning panel instead of editing schema.xml or solrconfig.xml: field weights (qf, title^5 tags^3 summary^2 body^1), minimum match (mm) to cut zero result searches, a freshness date decay boost, and the lexical to vector balance for hybrid search. Live, per index.</description>
<category>OPENSOLR GUIDE-Control Panel</category>
</item>
<item>
<title>Migrating from Hosted Apache Solr (hostedapachesolr.com) to Opensolr — Complete Guide</title>
<link>https://opensolr.com/learn/solr-migrations/243/migrating-from-hosted-apache-solr-hostedapachesolr.com-to-opensolr-complete-guide</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-migrations/243/migrating-from-hosted-apache-solr-hostedapachesolr.com-to-opensolr-complete-guide</guid>
<description>hostedapachesolr.com shut down permanently on October 31, 2022 and its indexes are gone, yet old Drupal tutorials still send people there. The replacement takes about 30 minutes: a free Opensolr account, an index on Solr 5 to 10 in the EU, US or APAC, the free Drupal module, then drush search-api:index.</description>
<category>SOLR DOCUMENTATION-Migrations</category>
</item>
<item>
<title>Managed Solr Hosting in 2026 — The Complete Provider Comparison</title>
<link>https://opensolr.com/learn/opensolr-versus-managed-solr-providers/242/managed-solr-hosting-in-2026-the-complete-provider-comparison</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-versus-managed-solr-providers/242/managed-solr-hosting-in-2026-the-complete-provider-comparison</guid>
<description>The managed Apache Solr market after the shakeout. hostedapachesolr.com, the Drupal favourite, closed on October 31, 2022, and what is left splits into five kinds: full stack search platforms, enterprise vendors selling through procurement, CMS specialist hosts, container deployers and DIY on a hyperscaler.</description>
<category>OPENSOLR VERSUS-Managed Solr Providers</category>
</item>
<item>
<title>Solr Migration</title>
<link>https://opensolr.com/learn/solr-migrations/241/solr-migration</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-migrations/241/solr-migration</guid>
<description>Moving an Opensolr Index off Solr 3.x, 4.x, 5.x, 6.x or 7.x onto Solr 8 or 9, with schema.xml and solrconfig.xml conversion tables. Opensolr migrates configuration only, flat 85 EUR per index, under 4 business hours. Data cannot cross a major Lucene version, so you fully reindex, old and new in parallel.</description>
<category>SOLR DOCUMENTATION-Migrations</category>
</item>
<item>
<title>Why was my email address rejected during registration?</title>
<link>https://opensolr.com/learn/security/240/why-was-my-email-address-rejected-during-registration</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/240/why-was-my-email-address-rejected-during-registration</guid>
<description>Opensolr verifies an email domain before it sends the registration code, so a signup can be refused. The checks are MX records, SPF and DMARC, domain age, whether mail sits on a reputable provider, a working website, and a live disposable address blocklist. Mistakes are reviewed by hand.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>How to Access the Solr Admin UI for Your Index</title>
<link>https://opensolr.com/learn/opensolr-management-control-panel/239/how-to-access-the-solr-admin-ui-for-your-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-management-control-panel/239/how-to-access-the-solr-admin-ui-for-your-index</guid>
<description>Reach the native Solr Admin UI for your Opensolr Index from the quick action row in the Index Control Panel: click Solr Admin and it opens in a new tab with credentials already loaded, no second login. Run raw queries, browse documents, inspect the schema, read live logs. Blank? Check the Security tab IP rules.</description>
<category>OPENSOLR GUIDE-Control Panel</category>
</item>
<item>
<title>Why does my Drupal Solr index data get reset or disappear after config import?</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/238/why-does-my-drupal-solr-index-data-get-reset-or-disappear-after-config-import</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/238/why-does-my-drupal-solr-index-data-get-reset-or-disappear-after-config-import</guid>
<description>Every document disappears from your Solr index after drush config:import on a Drupal site using Config Split. Search API sees server: null from the base config, so reactToServerSwitch() calls removeIndex() and deleteAllIndexItems() and wipes it silently. Fix with a settings.php override or config_ignore.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>Drupal &amp; WordPress Partner Discount — 20% Off</title>
<link>https://opensolr.com/learn/billing/237/drupal-wordpress-partner-discount-20-off</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/237/drupal-wordpress-partner-discount-20-off</guid>
<description>20% off any small or medium Opensolr plan for a full year when your Drupal or WordPress site runs the free Opensolr Search module as its search engine. Who is eligible, the search bandwidth and admin activity we check, the feedback or bug report we ask for, and how to apply. Lexical keyword plans only.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Complete Guide to the OpenSolr Search Drupal Module</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/236/complete-guide-to-the-opensolr-search-drupal-module</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/236/complete-guide-to-the-opensolr-search-drupal-module</guid>
<description>Full guide to the Opensolr Search module for Drupal 10 and 11: install, automatic facets and facet mapping, field mapping, web crawler setup, data ingestion and AI hybrid search. It avoids the Solr 10 limit of 1,000 schema fields and the maxBooleanClauses blowups that break Search API Solr.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>API - Get Facetable Fields</title>
<link>https://opensolr.com/learn/api-web-crawler/235/api-get-facetable-fields</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/235/api-get-facetable-fields</guid>
<description>get_facetable_fields API endpoint lists every indexed and stored field in an Opensolr Index schema with a type of string, numeric or date, the raw solr_type, the multi valued flag, document counts, and saved facet config: enabled, label, widget list, slider or date_range, weight.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>Top 10 Reasons Why Opensolr is Worth the Cost</title>
<link>https://opensolr.com/learn/billing/234/top-10-reasons-why-opensolr-is-worth-the-cost</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/234/top-10-reasons-why-opensolr-is-worth-the-cost</guid>
<description>Ten reasons the price of Opensolr pays for itself: fully managed Apache Solr with zero DevOps, hybrid keyword plus vector search on GPU embeddings, a web crawler, a data ingestion API, an embeddable search UI, search analytics, query elevation, REST APIs and CMS integrations, in one plan.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>API - Get Settings Dashboard (Combined Account, Crawl &amp; Environment Data)</title>
<link>https://opensolr.com/learn/api-index-management/233/api-get-settings-dashboard-combined-account-crawl-environment-data</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/233/api-get-settings-dashboard-combined-account-crawl-environment-data</guid>
<description>GET get_settings_dashboard returns your account summary, crawl statistics, crawl schedule status, owned index list, available server environments and live api_rate_limit usage in one HMAC-SHA256 signed call, turning four API round trips into one. Sign core_name plus email with your api_key.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>Opensolr Enterprise Apps Management — Dedicated Infrastructure Hosting</title>
<link>https://opensolr.com/learn/opensolr-management-control-panel/232/opensolr-enterprise-apps-management-dedicated-infrastructure-hosting</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-management-control-panel/232/opensolr-enterprise-apps-management-dedicated-infrastructure-hosting</guid>
<description>Opensolr runs your whole application stack on dedicated VPS or bare metal, not only the Solr cluster: Apache or Nginx, MySQL or PostgreSQL, PHP, Python and Node runtimes, SSL renewal, Varnish, cron, daily off box backups, git deployments with staging, and per IP rate limiting against bots and DDoS.</description>
<category>OPENSOLR GUIDE-Control Panel</category>
</item>
<item>
<title>Opensolr vs SearchStax — Full-Stack Managed Solr vs Enterprise Infrastructure Pricing for a Fraction of the Features</title>
<link>https://opensolr.com/learn/opensolr-versus-searchstax/231/opensolr-vs-searchstax-full-stack-managed-solr-vs-enterprise-infrastructure-pricing-for-a-fraction-of-the-features</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-versus-searchstax/231/opensolr-vs-searchstax-full-stack-managed-solr-vs-enterprise-infrastructure-pricing-for-a-fraction-of-the-features</guid>
<description>SearchStax Managed Search opens at $367 a month billed annually and reaches $1,934 for Platinum Plus, with no web crawler, no hybrid vector search, no embeddable widget, and a schema.xml you download, edit in a text editor and upload back. Opensolr includes all of that, with live XML validation.</description>
<category>OPENSOLR VERSUS-SearchStax</category>
</item>
<item>
<title>Opensolr vs Self-Hosted Solr — Why Manage the Plumbing When Someone Else Can?</title>
<link>https://opensolr.com/learn/opensolr-versus-self-hosted-solr/230/opensolr-vs-self-hosted-solr-why-manage-the-plumbing-when-someone-else-can</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-versus-self-hosted-solr/230/opensolr-vs-self-hosted-solr-why-manage-the-plumbing-when-someone-else-can</guid>
<description>Running Solr yourself means JVM heap and GC tuning, replication that silently goes stale on one wrong interval, disk and log rotation watching, keeping /update off the public internet, and writing your own monitoring and backup crons. Opensolr leaves schema.xml and solrconfig.xml to you and manages the rest.</description>
<category>OPENSOLR VERSUS-Self-Hosted Solr</category>
</item>
<item>
<title>Opensolr vs AWS OpenSearch — Real Search Control vs a Managed Black Box</title>
<link>https://opensolr.com/learn/opensolr-versus-aws-opensearch/229/opensolr-vs-aws-opensearch-real-search-control-vs-a-managed-black-box</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-versus-aws-opensearch/229/opensolr-vs-aws-opensearch-real-search-control-vs-a-managed-black-box</guid>
<description>AWS OpenSearch is an Elasticsearch fork driven by JSON mappings and Query DSL, so moving an Apache Solr stack onto it is a full rewrite of schema, queries and clients, not a hosting switch. Opensolr stays Solr: schema.xml and solrconfig.xml edited live, plus a crawler, embeddable widget and per handler IP ACLs.</description>
<category>OPENSOLR VERSUS-AWS OpenSearch</category>
</item>
<item>
<title>Opensolr vs Elasticsearch — Full-Stack AI Search for a Fraction of the Cost</title>
<link>https://opensolr.com/learn/opensolr-versus-elasticsearch/228/opensolr-vs-elasticsearch-full-stack-ai-search-for-a-fraction-of-the-cost</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-versus-elasticsearch/228/opensolr-vs-elasticsearch-full-stack-ai-search-for-a-fraction-of-the-cost</guid>
<description>Vector search on Elasticsearch is an add on: an ML node for ELSER or your own embedding pipeline, hand built hybrid queries, and $200 to $500 a month before any application code exists. Opensolr ships 1024 dimensional multilingual E5 embeddings on GPU, BM25 blended with KNN in 4 modes, a crawler and LLM answers.</description>
<category>OPENSOLR VERSUS-Elasticsearch</category>
</item>
<item>
<title>Hybrid Search Live Demo — Try It Yourself</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/227/hybrid-search-live-demo-try-it-yourself</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/227/hybrid-search-live-demo-try-it-yourself</guid>
<description>Run hybrid search live on four real Opensolr indexes: the Opensolr knowledge base, Fluke test and measurement gear, Dedeman home and DIY in Romanian, and Starbucks at Home coffee. Click a query, no sign up, and watch BM25 keyword matching and vector meaning fuse into one ranked list.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>ConcurrentModificationException — Two Operations Collided Inside Solr</title>
<link>https://opensolr.com/learn/solr-errors/226/concurrentmodificationexception-two-operations-collided-inside-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/226/concurrentmodificationexception-two-operations-collided-inside-solr</guid>
<description>java.util.ConcurrentModificationException: null is a harmless, transient threading collision inside Solr, two threads touching one internal list: heavy indexing during queries, an autoCommit hitting a facet query, or cache warming as a new searcher opens. Retry, batch updates, commit less often.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Cannot Unload Non-Existent Core — Index Not Ready After Restart</title>
<link>https://opensolr.com/learn/solr-errors/225/cannot-unload-non-existent-core-index-not-ready-after-restart</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/225/cannot-unload-non-existent-core-index-not-ready-after-restart</guid>
<description>Cannot unload non-existent core appears when a reload, commit or query reaches an Opensolr Index that has not finished loading, after a server restart or a replication cycle. Nothing is lost and no action is needed: wait 30 to 60 seconds, retry, check the Error Audit tab if it repeats.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>ParseException — Cannot Parse Query Syntax Error in Solr Search</title>
<link>https://opensolr.com/learn/solr-errors/224/parseexception-cannot-parse-query-syntax-error-in-solr-search</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/224/parseexception-cannot-parse-query-syntax-error-in-solr-search</guid>
<description>Cannot parse, Encountered &quot;:&quot; at line 1, column N: a Solr ParseException raised while searching, not while indexing your data. Typical causes are q and fq glued together without an ampersand, no spaces around AND, OR and NOT, unbalanced quotes or brackets, and unescaped : ( ) [ ] + - in user input.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Point Must Be in lat, lon or x y Format — Invalid Geo Coordinates in Solr</title>
<link>https://opensolr.com/learn/solr-errors/223/point-must-be-in-lat-lon-or-x-y-format-invalid-geo-coordinates-in-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/223/point-must-be-in-lat-lon-or-x-y-format-invalid-geo-coordinates-in-solr</guid>
<description>InvalidShapeException, Point must be in &apos;lat, lon&apos; or &apos;x y&apos; format: a Solr location field got an empty string, GeoJSON longitude first order, parentheses or degree symbols, or values outside -90 to 90 and -180 to 180. Send plain latitude then longitude, or omit the field.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Background Merge Hit Exception - MergeAbortedException in Apache Solr</title>
<link>https://opensolr.com/learn/solr-errors/222/background-merge-hit-exception-mergeabortedexception-in-apache-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/222/background-merge-hit-exception-mergeabortedexception-in-apache-solr</guid>
<description>java.io.IOException: background merge hit exception with MergeAbortedException and [maxNumSegments=1] means a forceMerge from optimize=true was interrupted by another commit or a reload. No documents are lost, but the commit returns HTTP 500. Stop optimizing on commit, in Drupal Search API too.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Leader Not Available — Index Fetch Failed During Replication</title>
<link>https://opensolr.com/learn/solr-errors/221/leader-not-available-index-fetch-failed-during-replication</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/221/leader-not-available-index-fetch-failed-during-replication</guid>
<description>Leader is not available, Index fetch failed by exception, Expected mime type application/octet-stream but got text/html: the follower got an HTML page instead of binary Solr data. Causes are a dead leader Solr process, a missing index, a proxy or firewall page, or a wrong replication URL.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>How to Import Data from MySQL (SQL) into Your Opensolr Index</title>
<link>https://opensolr.com/learn/solr-configuration-files/220/how-to-import-data-from-mysql-sql-into-your-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/220/how-to-import-data-from-mysql-sql-into-your-opensolr-index</guid>
<description>DataImportHandler was removed in Solr 9, so importing MySQL or PostgreSQL rows into an Opensolr Index now needs a script. Working curl, PHP and Python examples: query the database, turn each row into a JSON document, POST the array to /update?commit=true in batches of 500 to 1000.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>ClassNotFoundException: solr.FastLRUCache — Cache Class Removed in Solr 9</title>
<link>https://opensolr.com/learn/solr-errors/219/classnotfoundexception-solr.fastlrucache-cache-class-removed-in-solr-9</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/219/classnotfoundexception-solr.fastlrucache-cache-class-removed-in-solr-9</guid>
<description>Error loading class solr.FastLRUCache or solr.LRUCache: both cache classes were removed in Solr 9. In solrconfig.xml switch filterCache, queryResultCache, documentCache and fieldValueCache to class solr.CaffeineCache, keeping size and autowarmCount, then upload and reload your Opensolr Index.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>NumberFormatException During Indexing — Wrong Data Type in Numeric Field</title>
<link>https://opensolr.com/learn/solr-errors/218/numberformatexception-during-indexing-wrong-data-type-in-numeric-field</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/218/numberformatexception-during-indexing-wrong-data-type-in-numeric-field</guid>
<description>NumberFormatException: For input string, on Error adding field kcal=false, is a boolean or a placeholder such as N/A, none or an empty string reaching a pfloat or pint field. Solr rejects the whole document, so one bad row vanishes from a batch of a thousand. Clean the value or retype the field.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Missing SearchComponents — 500 Exception in solrconfig.xml</title>
<link>https://opensolr.com/learn/solr-errors/217/missing-searchcomponents-500-exception-in-solrconfig.xml</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/217/missing-searchcomponents-500-exception-in-solrconfig.xml</guid>
<description>Missing SearchComponents named [suggest], spellcheck or elevator means a requestHandler in solrconfig.xml lists a component in first-components, last-components or components with no matching searchComponent block. Define the missing component or remove the reference, then reload your index.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>SAXParseException — XML Parsing Error in Solr Configuration Files</title>
<link>https://opensolr.com/learn/solr-errors/216/saxparseexception-xml-parsing-error-in-solr-configuration-files</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/216/saxparseexception-xml-parsing-error-in-solr-configuration-files</guid>
<description>SAXParseException, with Unable to reload core, means solrconfig.xml, schema.xml or an included file such as search.xml holds invalid XML. The message names the file in systemId with the exact lineNumber and columnNumber. Usual culprits: a curly smart quote, an unclosed tag, an unescaped character.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 1</title>
<link>https://opensolr.com/learn/solr-errors/215/arrayindexoutofboundsexception-index-1-out-of-bounds-for-length-1</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/215/arrayindexoutofboundsexception-index-1-out-of-bounds-for-length-1</guid>
<description>ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 1 on a query points at damaged index segments, not your query. Indexing killed mid commit, a disk filling during a commit, kill -9, power loss and stale NFS all do it. Run Optimize to rewrite the segments clean, or re-index.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Weekly Error Digest — Automated Error Reports for Your Team</title>
<link>https://opensolr.com/learn/opensolr-management-control-panel/214/weekly-error-digest-automated-error-reports-for-your-team</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-management-control-panel/214/weekly-error-digest-automated-error-reports-for-your-team</guid>
<description>Every Monday at 9:00 AM Opensolr emails a digest of the week&apos;s errors: a count per Opensolr Index plus the 5 most recent critical ones, each linking straight to its Error Log. Owners see all their indexes, team members only the ones assigned to them. Switch the report off under Account &gt; Communications.</description>
<category>OPENSOLR GUIDE-Control Panel</category>
</item>
<item>
<title>Error Audit — 7-Day Searchable Error History</title>
<link>https://opensolr.com/learn/opensolr-management-control-panel/213/error-audit-7-day-searchable-error-history</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-management-control-panel/213/error-audit-7-day-searchable-error-history</guid>
<description>Error Audit keeps 7 days of parsed Solr log errors per Opensolr Index: full text search across stack traces, filters for Critical, Error and Warning and for types like Memory, I/O, Timeout, Parsing, Security and Connection, the Caused by root cause, a plain English explanation and an hourly error rate chart.</description>
<category>OPENSOLR GUIDE-Control Panel</category>
</item>
<item>
<title>Solr 9 Features and What&apos;s New</title>
<link>https://opensolr.com/learn/opensolr-resources/212/solr-9-features-and-whats-new</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/212/solr-9-features-and-whats-new</guid>
<description>What Apache Solr 9 actually changed: DenseVectorField and the knn query parser behind Opensolr hybrid search, AI Hints and RAG, CaffeineCache replacing FastLRUCache, unified highlighting by default, contribs turned into modules with SolrCell still shipped, and which Solr versions Opensolr runs.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Upload and Import Data from CSV to Your Opensolr Index</title>
<link>https://opensolr.com/learn/solr-configuration-files/211/upload-and-import-data-from-csv-to-your-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/211/upload-and-import-data-from-csv-to-your-opensolr-index</guid>
<description>Bulk loading a CSV or TSV file into an Opensolr Index through the native /update/csv handler with curl, without writing code. The parameters that matter, commit, separator, skip, fieldnames and overwrite, generating an id with UUIDUpdateProcessorFactory, and fixes for the unknown field error.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Solr Index with HTTP Authentication</title>
<link>https://opensolr.com/learn/security/210/solr-index-with-http-authentication</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/210/solr-index-with-http-authentication</guid>
<description>Turning on HTTP Basic Auth for an Opensolr Index step by step: the Security tab, Manage HTTP Auth Credentials, then sending the username and password on every request with curl -u, Solarium, SolrJ or pysolr. Also per handler IP rules that lock /update to your own servers, and TLS.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Laravel / Solarium / Vue / Opensolr Search Engine Sample Code</title>
<link>https://opensolr.com/learn/opensolr-resources/209/laravel-solarium-vue-opensolr-search-engine-sample-code</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/209/laravel-solarium-vue-opensolr-search-engine-sample-code</guid>
<description>A working Laravel application with a Vue search interface over an Opensolr index, using Solarium as the PHP Solr client. Full source at github.com/phpcip/laravel-solarium-vue-opensolr-search: composer install, point the config at your Opensolr endpoint and credentials, npm install, build, php artisan serve.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>How to Define New Fields in schema.xml</title>
<link>https://opensolr.com/learn/solr-configuration-files/208/how-to-define-new-fields-in-schema.xml</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/208/how-to-define-new-fields-in-schema.xml</guid>
<description>Adding a new field to schema.xml on an Opensolr Index: open the Edit schema.xml tab, then declare name, type, indexed, stored, multiValued and required. Which type to pick, text_general for body copy, string for ids and facets, tint or tfloat for ranges, pdate for timestamps, plus dynamic fields such as *_s.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>How to Setup Solr MySQL Data Import Handler (DIH)</title>
<link>https://opensolr.com/learn/solr-configuration-files/207/how-to-setup-solr-mysql-data-import-handler-dih</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/207/how-to-setup-solr-mysql-data-import-handler-dih</guid>
<description>Pulling MySQL rows into a Solr index with the DataImportHandler: the db-data-config.xml dataSource with JDBC driver, url, user and password, the SELECT that feeds it, matching each column to a field in schema.xml, and dataimport?command=full-import. DIH is off by default and gone in Solr 9.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Document Extraction (rtf:true) — Index PDFs, Word, Excel, and Other Files via the Ingestion API</title>
<link>https://opensolr.com/learn/api-data-ingestion/206/document-extraction-rtftrue-index-pdfs-word-excel-and-other-files-via-the-ingestion-api</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/206/document-extraction-rtftrue-index-pdfs-word-excel-and-other-files-via-the-ingestion-api</guid>
<description>Index a file instead of typing its text: add rtf:true to a document in the ingestion payload and point uri at a PDF, DOCX, XLSX, PPTX, ODT, ODS, ODP or TXT. Opensolr downloads it, detects the real format, extracts plaintext into the text field, then runs the usual embedding and language enrichment.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>Data Ingestion Queue — Monitor, Pause, Resume, Retry and Manage Your Ingestion Jobs</title>
<link>https://opensolr.com/learn/api-data-ingestion/205/data-ingestion-queue-monitor-pause-resume-retry-and-manage-your-ingestion-jobs</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/205/data-ingestion-queue-monitor-pause-resume-retry-and-manage-your-ingestion-jobs</guid>
<description>Manage ingestion jobs from Account then Data Ingestion, at /admin/solr_manager/my_ingestion_queue. Live progress per index with processed, successful and failed counts, refreshing every 10 seconds, plus pause, resume from the same document, stop, retry from scratch, edit the JSON payload, delete.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>Data Ingestion API — Push Documents to Your Opensolr Index Programmatically</title>
<link>https://opensolr.com/learn/api-data-ingestion/204/data-ingestion-api-push-documents-to-your-opensolr-index-programmatically</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-data-ingestion/204/data-ingestion-api-push-documents-to-your-opensolr-index-programmatically</guid>
<description>Push your own documents into a Web Crawler Opensolr Index instead of crawling: POST up to 50 per request to api.opensolr.com/solr_manager/api/ingest, get a job_id back and poll ingest_status. Each is enriched with vector embeddings, sentiment, language detection and derived fields, keyed on uri.</description>
<category>API ENDPOINTS-Data Ingestion</category>
</item>
<item>
<title>API Usage Dashboard — Monitor Your API Requests and Rate Limits</title>
<link>https://opensolr.com/learn/api-logs-analytics/203/api-usage-dashboard-monitor-your-api-requests-and-rate-limits</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-logs-analytics/203/api-usage-dashboard-monitor-your-api-requests-and-rate-limits</guid>
<description>The API Usage page of your Opensolr account shows total monthly requests, color coded last minute and last hour rate gauges, a per endpoint breakdown and six months of history. Default limits are 120 requests per minute and 1,200 per hour on sliding windows; going over returns HTTP 429 with Retry-After.</description>
<category>API ENDPOINTS-Logs &amp; Analytics</category>
</item>
<item>
<title>Search Tuning — Per-Index Relevancy Controls</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/202/search-tuning-per-index-relevancy-controls</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/202/search-tuning-per-index-relevancy-controls</guid>
<description>Search Tuning is the per index relevancy panel in Opensolr Index Settings: field weights, freshness boost, minimum match, quality signals and the semantic to lexical balance slider. Every value is read at query time, saves automatically with no Save button, and needs no reindexing to take effect.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>Opensolr Analytics — Solr-Level vs Web Crawler Search Analytics</title>
<link>https://opensolr.com/learn/web-crawler-analytics/201/opensolr-analytics-solr-level-vs-web-crawler-search-analytics</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-analytics/201/opensolr-analytics-solr-level-vs-web-crawler-search-analytics</guid>
<description>Opensolr reports at two levels. Solr level monitoring on every index: request volume, request path, popular and latest queries, QPS per server, disk and bandwidth, plus the Live Query Stream from parsed access logs. Search Analytics on Web Crawler indexes: top queries, zero results, clicks, CTR, CSV.</description>
<category>WEB CRAWLER GUIDE-Search Analytics</category>
</item>
<item>
<title>Click Analytics and CTR — Track What Users Actually Click</title>
<link>https://opensolr.com/learn/web-crawler-analytics/200/click-analytics-and-ctr-track-what-users-actually-click</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-analytics/200/click-analytics-and-ctr-track-what-users-actually-click</guid>
<description>Which results visitors actually click on an Opensolr Web Crawler index, in three views: Top Clicked documents, click through rate per query, and Low CTR queries with impressions but no clicks. Recording is automatic, deduplicated by IP and rate limited. Lift weak CTR with elevation or better pages.</description>
<category>WEB CRAWLER GUIDE-Search Analytics</category>
</item>
<item>
<title>No-Results Dashboard — Find and Fix Content Gaps</title>
<link>https://opensolr.com/learn/web-crawler-analytics/199/no-results-dashboard-find-and-fix-content-gaps</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-analytics/199/no-results-dashboard-find-and-fix-content-gaps</guid>
<description>Every site search that came back empty, logged with the exact wording the visitor typed, typos included, a unique IP count so one person refreshing counts once, and a timestamp. Query Analytics, No Results tab, ranked by unique users. Close the gaps with pages, synonyms or elevation rules, delete junk.</description>
<category>WEB CRAWLER GUIDE-Search Analytics</category>
</item>
<item>
<title>Opensolr Web Crawler vs Algolia — Why Opensolr Is the Complete Search Solution</title>
<link>https://opensolr.com/learn/opensolr-versus-algolia/198/opensolr-web-crawler-vs-algolia-why-opensolr-is-the-complete-search-solution</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-versus-algolia/198/opensolr-web-crawler-vs-algolia-why-opensolr-is-the-complete-search-solution</guid>
<description>Algolia hands you an API and a to do list: structure JSON records, maintain push scripts, build an InstantSearch UI, and pay extra for their crawler. Opensolr crawls the site instead: create an index with the __dense suffix, paste the URL, click Start Crawl. 21 file formats, JS rendering, hybrid vector search.</description>
<category>OPENSOLR VERSUS-Algolia</category>
</item>
<item>
<title>Query Elevation — Pin, Exclude &amp; Curate Your Search Results</title>
<link>https://opensolr.com/learn/web-crawler-query-elevation/197/query-elevation-pin-exclude-curate-your-search-results</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-query-elevation/197/query-elevation-pin-exclude-curate-your-search-results</guid>
<description>Query Elevation pins a document to position one for a given query, excludes it for that query, or hides it from every search. Rules live in the Elevation Rules tab of Query Analytics and Tools, reorder by drag and drop, and take effect on the next search with no reindexing. Promote, bury, curate.</description>
<category>WEB CRAWLER GUIDE-Query Elevation</category>
</item>
<item>
<title>Document Contains Immense Term — Field Value Exceeds Maximum Length</title>
<link>https://opensolr.com/learn/solr-errors/196/document-contains-immense-term-field-value-exceeds-maximum-length</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/196/document-contains-immense-term-field-value-exceeds-maximum-length</guid>
<description>Document contains at least one immense term, longer than the max length 32766, rejects the document: one token passed Lucene&apos;s byte cap. The cause is an untokenized field, a string type or KeywordTokenizer holding article bodies, raw HTML or a Drupal aggregated field. Retype it as text and re-index.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>API - Check Optimize Status</title>
<link>https://opensolr.com/learn/api-index-management/195/api-check-optimize-status</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/195/api-check-optimize-status</guid>
<description>Poll optimize_status to know when a segment merge is done: it answers with running and finished booleans plus live statistics, the segment count where 1 means fully optimized, size_bytes, num_docs and deleted_docs not yet reclaimed. Lets a script wait out an optimization before resuming writes.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Flush Crawl Buffer to Solr</title>
<link>https://opensolr.com/learn/api-web-crawler/194/api-flush-crawl-buffer-to-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/194/api-flush-crawl-buffer-to-solr</guid>
<description>flush_crawl_buffer API endpoint forces documents still sitting in the Opensolr Web Crawler batch buffer straight into Solr, so pages already fetched become searchable. Use it when the crawl is paused or finished and you suspect uncommitted docs. It reports how many were written.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Check if Web Crawler is Running</title>
<link>https://opensolr.com/learn/api-web-crawler/193/api-check-if-web-crawler-is-running</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/193/api-check-if-web-crawler-is-running</guid>
<description>crawler_active API endpoint tells you whether Opensolr Web Crawler processes are running right now for an index or sitting idle. The msg field reads CRAWLER IS READY when the crawler is idle or paused; any other message means a crawl is in progress. cURL, PHP and Python examples.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Resume the Web Crawler</title>
<link>https://opensolr.com/learn/api-web-crawler/192/api-resume-the-web-crawler</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/192/api-resume-the-web-crawler</guid>
<description>Resuming a paused Opensolr Web Crawler means calling start_crawl with clean=no: it continues at once from where it stopped instead of waiting for the next cron tick, and does not refetch pages already done. An empty todo queue means nothing happens, so read the live stats first.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Pause the Web Crawler</title>
<link>https://opensolr.com/learn/api-web-crawler/191/api-pause-the-web-crawler</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/191/api-pause-the-web-crawler</guid>
<description>pause_crawl API endpoint halts the running Opensolr Web Crawler processes for an index while keeping the cron schedule, so crawling starts again by itself on the next scheduled tick. Unlike stop_crawl nothing is unscheduled. Call it with email, api_key and core_name. cURL, PHP and Python examples.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>Autocomplete &amp; Spellcheck Implementation</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/190/autocomplete-spellcheck-implementation</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/190/autocomplete-spellcheck-implementation</guid>
<description>Typeahead and did you mean on an Opensolr Index: the /autocomplete endpoint over the edge n-gram fields title_tags, tags, title_tags_ws and tags_ws with defType=edismax, a debounced JavaScript input handler with dropdown CSS, and spellcheck suggestions and collations for misspelled queries.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>Complete Search Page: End-to-End Example</title>
<link>https://opensolr.com/learn/web-crawler-code-examples/189/complete-search-page-end-to-end-example</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-code-examples/189/complete-search-page-end-to-end-example</guid>
<description>A whole working search page in one HTML file, no libraries and no build step, ready to copy into your site: search box with autocomplete, eDisMax keyword queries sent straight from the browser over CORS, highlighted result snippets, a language facet sidebar, Did you mean spellcheck, and pagination.</description>
<category>WEB CRAWLER GUIDE-Code Examples</category>
</item>
<item>
<title>Faceted Navigation &amp; Filtering</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/188/faceted-navigation-filtering</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/188/faceted-navigation-filtering</guid>
<description>Faceted navigation on an Opensolr Index: facet=true with facet.field, facet.mincount, facet.sort and facet.limit, counts per language, domain, content type, category or currency, clicking a value adds an fq filter that does not change relevancy, and date buckets via facet.range on creation_date.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>Pagination, Sorting &amp; Freshness Boosting</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/187/pagination-sorting-freshness-boosting</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/187/pagination-sorting-freshness-boosting</guid>
<description>Paging search results with start and rows, getting page numbers from numFound, and moving to cursorMark when deep paging gets slow. Sorting by score, creation_date, title_s, price_f or sent_com on docValues fields, and ranking recent pages higher with bf=recip(ms(NOW,creation_date),3.16e-11,1,1).</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>Understanding the Solr JSON Response</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/183/understanding-the-solr-json-response</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/183/understanding-the-solr-json-response</guid>
<description>Parsing the JSON that a Solr search returns: responseHeader with status and QTime, response with numFound, start and the docs array, then the highlighting, facet_counts and spellcheck sections. Plus what a document object holds, how score is computed, and what an error response looks like.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>How Text Analysis Works: Stemming, Synonyms &amp; Accent Folding</title>
<link>https://opensolr.com/learn/web-crawler-index-fields/182/how-text-analysis-works-stemming-synonyms-accent-folding</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-index-fields/182/how-text-analysis-works-stemming-synonyms-accent-folding</guid>
<description>The analysis pipeline behind every text field in an Opensolr Index: HTML stripping, ISO Latin accent folding so cafe matches cafe with an accent, ICU tokenization with CJK segmentation, possessive and stop word removal, lowercasing, camelCase and Wi-Fi splitting, and stemming so running finds run.</description>
<category>WEB CRAWLER GUIDE-Index Fields</category>
</item>
<item>
<title>Crawler Configuration &amp; Best Practices</title>
<link>https://opensolr.com/learn/web-crawler-getting-started/181/crawler-configuration-best-practices</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-getting-started/181/crawler-configuration-best-practices</guid>
<description>The mandatory config set mandatory_web_crawler_config_set_solr_9.zip and where to upload it (Index Settings, Upload Config), which file types the crawler reads (HTML, PDF, DOCX, ODT, XLSX, image EXIF), and when to switch the Renderer from Curl to headless Chrome for React, Vue or Next.js sites.</description>
<category>WEB CRAWLER GUIDE-Web Crawler Overview</category>
</item>
<item>
<title>Code Examples: Build Your Own Search UI</title>
<link>https://opensolr.com/learn/web-crawler-code-examples/180/code-examples-build-your-own-search-ui</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-code-examples/180/code-examples-build-your-own-search-ui</guid>
<description>Copy paste code for querying an Opensolr Web Crawler index yourself in HTML/JS, PHP, Node.js and curl, with the same hybrid search the built in UI sends. Covers the embed endpoint returning a 1024 float vector, the {!hybrid} parser with alpha, mode and topN, edismax, fq, fl and the 15 highlighting params.</description>
<category>WEB CRAWLER GUIDE-Code Examples</category>
</item>
<item>
<title>Querying the Solr API: Search Parameters Explained</title>
<link>https://opensolr.com/learn/web-crawler-solr-api/179/querying-the-solr-api-search-parameters-explained</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-solr-api/179/querying-the-solr-api-search-parameters-explained</guid>
<description>Querying an Opensolr Index at the /select endpoint: the q, df, rows, start, wt, fl, sort and fq parameters, HTTP Basic Auth with the user opensolr and your Secret API Key, the hybrid parser that fuses BM25 keywords with vector search, and the Solr Query Inspector that copies the exact params sent.</description>
<category>WEB CRAWLER GUIDE-Solr API</category>
</item>
<item>
<title>Web Crawler Index Field Reference</title>
<link>https://opensolr.com/learn/web-crawler-index-fields/178/web-crawler-index-field-reference</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-index-fields/178/web-crawler-index-field-reference</guid>
<description>Every field in an Opensolr Web Crawler Index with its type and meaning: id, uri, title, description, text, author, content_type, content_status, category, signature and og_image, plus date, sentiment, vector and dynamic meta_ fields. Use it to choose fl, fq, sort and facet values in your queries.</description>
<category>WEB CRAWLER GUIDE-Index Fields</category>
</item>
<item>
<title>Embedding the Opensolr Search UI</title>
<link>https://opensolr.com/learn/web-crawler-embed-code/177/embedding-the-opensolr-search-ui</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-embed-code/177/embedding-the-opensolr-search-ui</guid>
<description>Drop a ready made search engine onto any website with two lines of HTML: a div carrying data-index plus the search.opensolr.com/embed.js script tag. Data attributes tune the topbar, initial query, content type, OG thumbnails, source domain, freshness, AI mode, language, theme, layout and facet sidebar.</description>
<category>WEB CRAWLER GUIDE-Embed Code</category>
</item>
<item>
<title>Getting Started: Web Crawler Site Search</title>
<link>https://opensolr.com/learn/web-crawler-getting-started/176/getting-started-web-crawler-site-search</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler-getting-started/176/getting-started-web-crawler-site-search</guid>
<description>Step by step setup of the Opensolr Web Crawler with screenshots: register, filter servers by Crawler = YES, name the index with the __dense suffix, add and verify your URL, then click Start Crawl Schedule. You get a live hybrid keyword and vector site search at search.opensolr.com/YOUR_INDEX_NAME.</description>
<category>WEB CRAWLER GUIDE-Web Crawler Overview</category>
</item>
<item>
<title>Batch vector embeddings</title>
<link>https://opensolr.com/learn/opensolr-ai-api/175/batch-vector-embeddings</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/175/batch-vector-embeddings</guid>
<description>batch_embed embeds up to 50 texts in one request, each up to 50,000 characters, encoded in a single GPU batch instead of looping over the single embed call. Pass payloads as a JSON array by GET, POST or JSON body, set is_query for queries versus documents, and read back vectors and count.</description>
<category>AI SERVICES-Vector Embedding API</category>
</item>
<item>
<title>API - Reset Solr Index Data</title>
<link>https://opensolr.com/learn/api-index-management/174/api-reset-solr-index-data</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/174/api-reset-solr-index-data</guid>
<description>Empty an Opensolr Index without deleting it: the reset_index API endpoint (alias reset_core) removes every document while the schema, solrconfig.xml and the rest of the configuration stay untouched, leaving a clean index to reindex from scratch. The wipe is permanent, so take a backup first.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>Shared, Dedicated, Resilient Cluster Solr Cloud Solutions</title>
<link>https://opensolr.com/learn/billing/173/shared-dedicated-resilient-cluster-solr-cloud-solutions</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/173/shared-dedicated-resilient-cluster-solr-cloud-solutions</guid>
<description>The four Opensolr hosting tiers compared: Shared Solr for development and ordinary production, Shared Resilient Cluster for load balanced throughput, Dedicated Standalone on a machine nobody else touches, and Dedicated Cluster with master, replicas, failover and multi region. Indexes stay isolated on all four.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Real-Time Solr Monitoring &amp; Analytics</title>
<link>https://opensolr.com/learn/opensolr-management-control-panel/172/real-time-solr-monitoring-analytics</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-management-control-panel/172/real-time-solr-monitoring-analytics</guid>
<description>Live query volume, the full query stream and server health for one Opensolr Index: timestamps, response times to the millisecond, result counts and status, regex filtering on paths and parameters, slow query flagging from 0.2 to 1.0 seconds, plus CPU, memory, disk and load. History goes back a month.</description>
<category>OPENSOLR GUIDE-Control Panel</category>
</item>
<item>
<title>Slow Solr Queries Debugging</title>
<link>https://opensolr.com/learn/solr-errors/171/slow-solr-queries-debugging</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/171/slow-solr-queries-debugging</guid>
<description>Drupal search feels slow while the Solr query itself takes 200ms: the seconds go into faceting. Disable facets nobody sees, replace facet.limit=-1 with 50, move to the JSON Facet API, put docValues on every faceted field, size the filterCache and set facet.threads. Stacked fq negations add to it.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Testing Opensolr AI Search — Vector Search, AI Hints &amp; Document Reader</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/170/testing-opensolr-ai-search-vector-search-ai-hints-document-reader</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/170/testing-opensolr-ai-search-vector-search-ai-hints-document-reader</guid>
<description>Test the four AI features shipping with every Opensolr Web Crawler index: intent based vector search on multilingual E5 1024 dimension embeddings fused with BM25, RAG powered AI Hints above the results, one click Document Reader summaries with PDF export, and Query Elevation to pin or exclude hits.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>The Complete Opensolr Platform Guide</title>
<link>https://opensolr.com/learn/opensolr-management-control-panel/169/the-complete-opensolr-platform-guide</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-management-control-panel/169/the-complete-opensolr-platform-guide</guid>
<description>A single tour of everything Opensolr runs: managed Apache Solr hosting across six regions with shared, dedicated and resilient clusters, the Control Panel with query analytics, backups, security and a live config editor, the web crawler, AI hybrid search, Drupal modules and the WordPress plugin.</description>
<category>OPENSOLR GUIDE-Control Panel</category>
</item>
<item>
<title>Drupal - Can not get additional data from Solr timeout after...</title>
<link>https://opensolr.com/learn/solr-errors/168/drupal-can-not-get-additional-data-from-solr-timeout-after</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/168/drupal-can-not-get-additional-data-from-solr-timeout-after</guid>
<description>Solr was unable to retrieve additional data about the server, with cURL error 28, is Drupal search_api_solr timing out on /admin/luke, whose field and term dump runs to megabytes. Define /admin/luke as solr.PingRequestHandler in solrconfig.xml, or set skip_schema_check in settings.php.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Manual Opensolr Index Replication</title>
<link>https://opensolr.com/learn/opensolr-replication/167/manual-opensolr-index-replication</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-replication/167/manual-opensolr-index-replication</guid>
<description>Copy one Opensolr Index into another, across clusters or across continents, over HTTPS. Add a /replication requestHandler to solrconfig.xml: replicateAfter and confFiles on the leader, masterUrl, pollInterval and httpBasicAuthUser on the follower, then whitelist each server IP. Identical schema.xml on both sides.</description>
<category>OPENSOLR GUIDE-Solr Replication Guide</category>
</item>
<item>
<title>Cancel Your Opensolr Subscription or Close Your Account</title>
<link>https://opensolr.com/learn/billing/166/cancel-your-opensolr-subscription-or-close-your-account</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/166/cancel-your-opensolr-subscription-or-close-your-account</guid>
<description>Cancelling an Opensolr subscription or membership: Billing then Cancel Plan in the control panel stops billing immediately, detaches the stored card and drops you to the free tier. Closing the account takes an email to support. Indexes go with the plan, so back up first. Unused days return as credit.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Hybrid Search in Opensolr: A Modern Approach</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/163/hybrid-search-in-opensolr-a-modern-approach</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/163/hybrid-search-in-opensolr-a-modern-approach</guid>
<description>Hybrid search in Opensolr fuses keyword matching with vector similarity: why vectors alone give mystery rankings and chunking trouble, the embeddings DenseVectorField and vectorDimension 1024 schema.xml needs for the multilingual e5 model, and the {!hybrid} parser. Crawler indexes ship ready.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>Create vector embeddings</title>
<link>https://opensolr.com/learn/opensolr-ai-api/162/create-vector-embeddings</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/162/create-vector-embeddings</guid>
<description>The embed endpoint returns a 1024 dimension multilingual e5 vector for any UTF-8 text up to 50,000 characters, POST only, nothing indexed in advance. Set is_query=1 for user search strings and 0 for documents; the instruction prefix lifts recall and enables cross language matching.</description>
<category>AI SERVICES-Vector Embedding API</category>
</item>
<item>
<title>Create vector embeddings for every document in your Opensolr Index</title>
<link>https://opensolr.com/learn/opensolr-ai-api/161/create-vector-embeddings-for-every-document-in-your-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/161/create-vector-embeddings-for-every-document-in-your-opensolr-index</guid>
<description>embed_opensolr_index generates and stores vectors for every document already in an Opensolr Index. It uses Solr atomic updates, so a field neither stored nor docValues true is lost: add the embeddings DenseVectorField with vectorDimension 1024 to schema.xml and the updateLog to solrconfig.xml.</description>
<category>AI SERVICES-Vector Embedding API</category>
</item>
<item>
<title>Moodle LMS Integration Tutorial</title>
<link>https://opensolr.com/learn/moodle-opensolr-integration/160/moodle-lms-integration-tutorial</link>
<guid isPermaLink="true">https://opensolr.com/learn/moodle-opensolr-integration/160/moodle-lms-integration-tutorial</guid>
<description>Connecting Moodle Global Search to Opensolr: upload Moodle&apos;s schema.xml in the Config Files Editor, tick Enable Global Search, set the search engine to Solr, then fill in the host, port 443, SSL, index name and credentials. Index with search/cli/indexer.php, enable file indexing for PDFs.</description>
<category>INTEGRATION-Moodle</category>
</item>
<item>
<title>Enable Remote Streaming in Tika Extract with Opensolr</title>
<link>https://opensolr.com/learn/solr-tika-integration/159/enable-remote-streaming-in-tika-extract-with-opensolr</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-tika-integration/159/enable-remote-streaming-in-tika-extract-with-opensolr</guid>
<description>Solr answers Remote Streaming is disabled on stream.url extraction although enableRemoteStreaming is already true in requestDispatcher. The forgotten second switch is allowRemoteStreaming inside the /update/extract handler. It is off by default: ask Opensolr to turn it on, upload, Reload Core.</description>
<category>SOLR DOCUMENTATION-Tika</category>
</item>
<item>
<title>Solr JVM Tuning RAM &amp; Memory Management</title>
<link>https://opensolr.com/learn/solr-configuration-files/158/solr-jvm-tuning-ram-memory-management</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/158/solr-jvm-tuning-ram-memory-management</guid>
<description>Solr memory tuning on both sides of the problem. JVM heap sizing with Xms and Xmx, the G1GC collector, MaxGCPauseMillis, string deduplication, GC logging and a heap dump on OutOfMemoryError. Then the query side: capping rows, deep start values, docValues, and trimming caches in solrconfig.xml.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Cannot change field from DOCS_AND_FREQS_AND_POSITIONS DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS</title>
<link>https://opensolr.com/learn/solr-errors/157/cannot-change-field-from-docs_and_freqs_and_positions-docs_and_freqs_and_positions_and_offsets</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/157/cannot-change-field-from-docs_and_freqs_and_positions-docs_and_freqs_and_positions_and_offsets</guid>
<description>cannot change field from index options DOCS_AND_FREQS_AND_POSITIONS to DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS appears when storeOffsetsWithPositions is added or dropped after indexing, often by Drupal Search API Solr enabling highlighting. Make the definition consistent, reload, wipe and re-index.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>The Solr edismax query Parser. How it works and how it helps.</title>
<link>https://opensolr.com/learn/solr-configuration-files/155/the-solr-edismax-query-parser.-how-it-works-and-how-it-helps</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/155/the-solr-edismax-query-parser.-how-it-works-and-how-it-helps</guid>
<description>How the Solr eDisMax query parser ranks results, parameter by parameter: qf field weights, mm minimum should match, the pf, pf2 and pf3 phrase boosts with ps slop, and tie. Every parsed query shown is a real debugQuery=true capture from a live Opensolr Index, DisjunctionMaxQuery output included.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Autocomplete in Solr and EdgeNGram Fields - the eCommerce helper</title>
<link>https://opensolr.com/learn/solr-configuration-files/154/autocomplete-in-solr-and-edgengram-fields-the-ecommerce-helper</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/154/autocomplete-in-solr-and-edgengram-fields-the-ecommerce-helper</guid>
<description>Autocomplete and search as you type in Solr with EdgeNGram fields: the edgy_text field type and solr.EdgeNGramFilterFactory index every prefix of a word, so typing lap already matches laptop. Shows the fieldType XML, minGramSize and maxGramSize, and where it helps on product names and SKUs.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Best Fulltext Solr Fields</title>
<link>https://opensolr.com/learn/solr-configuration-files/153/best-fulltext-solr-fields</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/153/best-fulltext-solr-fields</guid>
<description>Which Solr field type to use for full text search: text_general, with HTML stripping, ICU tokenization, word delimiters, stopword removal and stemming, and text_general_phonetic, which adds Beider Morse encoding for sound alike matches. Includes qf, mm and bf tuning examples.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Opensolr is ISO9001 and ISO27001 Certified</title>
<link>https://opensolr.com/learn/security/152/opensolr-is-iso9001-and-iso27001-certified</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/152/opensolr-is-iso9001-and-iso27001-certified</guid>
<description>Opensolr holds ISO 27001 for information security management and ISO 9001 for quality management, both independently audited rather than self declared. What each standard covers, continuous risk management, documented processes, and how the certificates answer a vendor security questionnaire.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Download Invoices — Billing History &amp; Tax Documents</title>
<link>https://opensolr.com/learn/billing/151/download-invoices-billing-history-tax-documents</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/151/download-invoices-billing-history-tax-documents</guid>
<description>Opensolr invoices, payment receipts and tax documents: open Billing then Invoices Dashboard in the top menu, or the Stripe Customer Portal, to download PDF invoices for any billing period. Each carries the invoice number, itemised charges, payment method and VAT details. Team logins have no billing access.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>AI-API - Summarize Context</title>
<link>https://opensolr.com/learn/opensolr-ai-api/150/ai-api-summarize-context</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-api/150/ai-api-summarize-context</guid>
<description>The ai_summary endpoint on api.opensolr.com writes a grounded answer or summary from context you supply. RAG in two steps: retrieve with hybrid search or embed_and_search, then put your question and the title, description and text of the top results into the instruction parameter.</description>
<category>AI SERVICES-Vector Embedding API</category>
</item>
<item>
<title>How does Opensolr Work?</title>
<link>https://opensolr.com/learn/billing/149/how-does-opensolr-work</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/149/how-does-opensolr-work</guid>
<description>Opensolr is managed Apache Solr hosting on AWS and Hetzner bare metal, every index containerized and isolated, in US East and West, Canada, EU Central, East and West, China and Hong Kong, and Australia. Plan types: Shared Cloud, Shared Resilient Cluster, Dedicated Standalone or Cluster.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Order &amp; Upgrade Indexes, Disk Space, Bandwidth — Opensolr Resources</title>
<link>https://opensolr.com/learn/billing/148/order-upgrade-indexes-disk-space-bandwidth-opensolr-resources</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/148/order-upgrade-indexes-disk-space-bandwidth-opensolr-resources</guid>
<description>An Opensolr plan is four separate resources: indexes, clusters, disk space and bandwidth. Buy more of the one you ran out of, not a bigger bundle. Check usage in the index control panel or Solr Admin, then set the sliders on the pricing page. Live in minutes, pro rated, no reindexing.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>SolrException: Invalid Number for field</title>
<link>https://opensolr.com/learn/solr-errors/147/solrexception-invalid-number-for-field</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/147/solrexception-invalid-number-for-field</guid>
<description>Invalid Number for field means a value that is not a number reached a pint, pfloat, plong or pdouble field, so Solr discarded the whole document. Empty strings, null, N/A, currency like $19.99 and units like 150kg do it. Skip the field when it is not numeric, or retype it to string and re-index.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Cannot Change DocValues Type</title>
<link>https://opensolr.com/learn/solr-errors/146/cannot-change-docvalues-type</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/146/cannot-change-docvalues-type</guid>
<description>cannot change DocValues type from SORTED to SORTED_SET says the data on disk was built with different field settings than your edited schema. Flipping multiValued, moving string to pint or adding docValues triggers it. Nothing converts in place: reset the index data, reload and re-index everything.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Setup Opensolr with Omeka Solr</title>
<link>https://opensolr.com/learn/opensolr-omeka/145/setup-opensolr-with-omeka-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-omeka/145/setup-opensolr-with-omeka-solr</guid>
<description>Wire Omeka S collections into an Opensolr Index with the SearchSolr module by Daniel-KM and its Advanced Search dependency: upload schema.xml and solrconfig.xml in the Config Files Editor, set host, port 443, path /solr/your_core and credentials under Search &gt; Solr cores, map Dublin Core fields, reindex.</description>
<category>INTEGRATION-Omeka</category>
</item>
<item>
<title>Can not query all data in Solr</title>
<link>https://opensolr.com/learn/solr-errors/144/can-not-query-all-data-in-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/144/can-not-query-all-data-in-solr</guid>
<description>q=*:* returns fewer documents than you indexed, usually because a default /select handler pulled in by an xi:include of search.xml sets its own filter queries, field list or row limit. Remove that include from solrconfig.xml and reload; then check rows, start, stray fq defaults and commits.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Using NLP Models</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/143/using-nlp-models</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/143/using-nlp-models</guid>
<description>Wiring OpenNLP into schema_extra_types.xml, with a worked Dutch fieldType: OpenNLPTokenizerFactory, OpenNLPPOSFilterFactory for part of speech tagging, TypeTokenFilterFactory whitelisting nouns, EdgeNGram autocomplete and a query side synonym graph. Absolute model paths and gotchas.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>API - Get configuration file</title>
<link>https://opensolr.com/learn/api-config-files/142/api-get-configuration-file</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-config-files/142/api-get-configuration-file</guid>
<description>Download one configuration file from an Opensolr Index with the get_file API endpoint. The name is split in two, file_name without the extension and file_extension without the period, so schema plus xml returns the raw schema.xml. Same for solrconfig.xml, stopwords or synonyms, ready for git.</description>
<category>API ENDPOINTS-Config Files</category>
</item>
<item>
<title>My search query does not return the correct results</title>
<link>https://opensolr.com/learn/solr-errors/141/my-search-query-does-not-return-the-correct-results</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/141/my-search-query-does-not-return-the-correct-results</guid>
<description>Missing or badly ranked results are nearly always your schema, analyzer chain or query parameters, not the hosting. Debug from the Query tab: add debugQuery=true to read the scoring, check which field df searches, compare index time against query time analysis, and run q=*:*&amp;rows=0.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>How to Import XML Data into Your Opensolr Index</title>
<link>https://opensolr.com/learn/solr-configuration-files/140/how-to-import-xml-data-into-your-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/140/how-to-import-xml-data-into-your-opensolr-index</guid>
<description>Index XML documents by posting the file to the /update endpoint of your Opensolr Index over HTTP, with no DataImportHandler and no data-config.xml, since DIH was removed in Solr 9. Covers the add, doc and field format Solr expects, the required id field, and curl, PHP and Python batch importers.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Solr Traffic Bandwidth</title>
<link>https://opensolr.com/learn/opensolr-resources/139/solr-traffic-bandwidth</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/139/solr-traffic-bandwidth</guid>
<description>Opensolr bills the outgoing bytes your index sends back, not the number of requests and not the size of the index. Why a bill climbs: bots hitting search pages, and responses carrying every field of every row. Find the culprit by faceting the request log by IP and path, or tail the last 1,000 lines live.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Solr Best Practices</title>
<link>https://opensolr.com/learn/opensolr-resources/138/solr-best-practices</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/138/solr-best-practices</guid>
<description>What really consumes Solr JVM heap and ends in an OutOfMemoryError: filter query bitsets, the result window of a page ten thousand results deep, fields un-inverted for faceting because they lack docValues, and wide stored documents. Measured here, rows=1000 returns a megabyte where rows=10 returns 10 KB.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Enable Spellcheck in Solr</title>
<link>https://opensolr.com/learn/solr-spellcheck/136/enable-spellcheck-in-solr</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-spellcheck/136/enable-spellcheck-in-solr</guid>
<description>Wiring Did you mean suggestions into Apache Solr: a textSpell fieldType and a spell field in schema.xml, a spellcheck searchComponent using DirectSolrSpellChecker with accuracy, maxEdits and minQueryLength, spellcheck in last-components on /select, a reindex, then querying with spellcheck=true.</description>
<category>SOLR DOCUMENTATION-Spellcheck</category>
</item>
<item>
<title>API - Solr Traffic Monitoring API</title>
<link>https://opensolr.com/learn/api-logs-analytics/135/api-solr-traffic-monitoring-api</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-logs-analytics/135/api-solr-traffic-monitoring-api</guid>
<description>Practical traffic monitoring recipes for the request_log endpoint: last 200 requests of the past 24 hours, IP and path facets over a month, most popular search queries, HTTP status code breakdown, failed 4xx requests, and a full CSV export. Built from fq[] date ranges, facet.field[], sort and wt.</description>
<category>API ENDPOINTS-Logs &amp; Analytics</category>
</item>
<item>
<title>How to use OpenNLP (NER) with Opensolr</title>
<link>https://opensolr.com/learn/opensolr-ai-nlp/133/how-to-use-opennlp-ner-with-opensolr</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-ai-nlp/133/how-to-use-opennlp-ner-with-opensolr</guid>
<description>Hand rolling Named Entity Recognition in Solr with OpenNLP: pull people, places and organisations out of indexed data with the default .bin models, which Opensolr installs on request and enables by default in the Germany Solr 9 environment. Plus how managed AI search compares with the DIY route.</description>
<category>AI SERVICES-Hybrid Search</category>
</item>
<item>
<title>Information Security Policy</title>
<link>https://opensolr.com/learn/security/132/information-security-policy</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/132/information-security-policy</guid>
<description>The Opensolr information security policy: what account data and index data are held, the datacenter and region you pick for them, and how logins, two factor, reCAPTCHA and Teams gate access. ISO 27001 and ISO 9001 certified, reviewed quarterly, mapped to SOC 2, SIG and CAIQ.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Solr Too Many Boolean Clauses Error</title>
<link>https://opensolr.com/learn/solr-errors/129/solr-too-many-boolean-clauses-error</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/129/solr-too-many-boolean-clauses-error</guid>
<description>maxClauseCount is set to 1024 and TooManyClauses stop a query that expanded past the Lucene limit: Drupal Search API Solr fanning terms over boosted fields, wildcards, synonyms or a huge OR filter list. In Solr 9 only solr.xml raises it, via an int element plus JVM properties, and it takes a restart.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Opensolr Teams Management</title>
<link>https://opensolr.com/learn/opensolr-teams-management/128/opensolr-teams-management-</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-teams-management/128/opensolr-teams-management-</guid>
<description>Share individual Opensolr Indexes without handing over your login or your billing. Invite any registered account by email, free, paid or expired, and pick the indexes it may work on: edit schema and config files, index, query and delete data, run backups, read error logs. Billing and deletion stay with the owner.</description>
<category>OPENSOLR GUIDE-Teams Management</category>
</item>
<item>
<title>Enable, Create, Restore and Download your Solr Index Backup</title>
<link>https://opensolr.com/learn/backup/127/enable-create-restore-and-download-your-solr-index-backup</link>
<guid isPermaLink="true">https://opensolr.com/learn/backup/127/enable-create-restore-and-download-your-solr-index-backup</guid>
<description>Backup tab of the Opensolr Index Control Panel: Create Backup Now snapshots data, schema and configuration, Enable Daily Backups repeats it every day, Restore rolls the index back in one click, Download keeps an off site copy. Retention is 7 days. Backups can also be made by API.</description>
<category>OPENSOLR GUIDE-Solr Backup &amp; Restore</category>
</item>
<item>
<title>Drupal Configuration Steps</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/126/drupal-configuration-steps</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/126/drupal-configuration-steps</guid>
<description>Manual Drupal to Opensolr setup for when AutoConfigure is not an option: select Basic Auth in the Solr server settings, set a simple alphanumeric username and password in the Security tab, put /solr in Solr path and the index name in Solr core, zip the module conf folder, upload, Reload, Index now.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>Tika Extractor doesn&apos;t work with my Opensolr Index</title>
<link>https://opensolr.com/learn/solr-tika-integration/125/tika-extractor-doesnt-work-with-my-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-tika-integration/125/tika-extractor-doesnt-work-with-my-opensolr-index</guid>
<description>Tika text extraction failing on your Opensolr Index, from Drupal or your own code. Four checks in the order that fixes most cases: retry on Solr 9, 7, 6 or 5 and avoid Solr 8.x whose Jetty breaks Tika, ask support to enable Tika in your region, confirm the ExtractingRequestHandler, then send us the error.</description>
<category>SOLR DOCUMENTATION-Tika</category>
</item>
<item>
<title>I cannot index any content from my Drupal CMS to my Opensolr index</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/124/i-cannot-index-any-content-from-my-drupal-cms-to-my-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/124/i-cannot-index-any-content-from-my-drupal-cms-to-my-opensolr-index</guid>
<description>Drupal indexing dies with SolrException and FileNotFoundException on a data/tlog file: the transaction log on your Opensolr Index is corrupted and no update gets through. Click Reload/Repair under Tools to clear it at once, or delete the updateLog block from solrconfig.xml so it stops recurring.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>The log4j Vulnerability (CVE-2021-44228)</title>
<link>https://opensolr.com/learn/security/123/the-log4j-vulnerability-cve-2021-44228</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/123/the-log4j-vulnerability-cve-2021-44228</guid>
<description>Opensolr is not vulnerable to CVE-2021-44228, the log4j remote code execution flaw. The whole platform was patched on December 11, 2021, across every hosted Solr version, old releases included, with no customer action and no downtime. Written confirmation is available for a security review.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>API - Get LIVE Web Crawler Stats</title>
<link>https://opensolr.com/learn/api-web-crawler/122/api-get-live-web-crawler-stats</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/122/api-get-live-web-crawler-stats</guid>
<description>get_crawl_stats API endpoint returns live Web Crawler counters for an Opensolr Index: pages crawled, pages still queued, errors and traffic used. Poll it with email, api_key and core_name to follow crawl progress, feed a dashboard, or decide when to pause or resume the crawler.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>CORS Ajax requests directly to Opensolr Index.</title>
<link>https://opensolr.com/learn/security/121/cors-ajax-requests-directly-to-opensolr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/121/cors-ajax-requests-directly-to-opensolr-index</guid>
<description>Calling an Opensolr Index straight from browser JavaScript requires your origins to be whitelisted: authenticated AJAX requests are refused from any domain not approved for that index. Send the exact scheme and host, the index name and your account email to support@opensolr.com.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Opensolr Resilient Cluster Explained - Billing</title>
<link>https://opensolr.com/learn/billing/120/opensolr-resilient-cluster-explained-billing</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/120/opensolr-resilient-cluster-explained-billing</guid>
<description>Opensolr Resilient Cluster: one master takes the writes, replicas sync and serve reads behind a load balancer, and a watchdog reroutes traffic within seconds when a server fails, under a 99.9% uptime SLA. Billed as one flat monthly fee for the cluster, no per server or per query charge.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Default HTTP Auth Credentials</title>
<link>https://opensolr.com/learn/security/118/default-http-auth-credentials</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/118/default-http-auth-credentials</guid>
<description>A new Opensolr Index ships with HTTP Basic Auth already on: username opensolr, password your account Automation REST API key from the dashboard. Change both in the Security tab of the index control panel, applied at once. Regenerating the API key only affects indexes created afterwards.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>DataImport (DIH) Disabled by Default</title>
<link>https://opensolr.com/learn/security/117/dataimport-dih-disabled-by-default</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/117/dataimport-dih-disabled-by-default</guid>
<description>The Solr DataImportHandler is off across Opensolr for security, because DIH pulls data from a source defined inside the index configuration. To have it turned on, email support@opensolr.com or use the contact form with the index name and what you import from. It is enabled per index, not account wide.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Drupal Search API Opensolr</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/116/drupal-search-api-opensolr</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/116/drupal-search-api-opensolr</guid>
<description>Search API Opensolr extends Search API Solr for Drupal 8 and later and adds AutoConfigure: one click creates your Opensolr Index, sets up the Drupal Search API server, uploads config.zip and leaves it ready to index. composer require drupal/search_api_opensolr, plus a submodule for Basic Auth.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>Opensolr Web Crawler Standards</title>
<link>https://opensolr.com/learn/web-crawler/115/opensolr-web-crawler-standards</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler/115/opensolr-web-crawler-standards</guid>
<description>What a page must satisfy before the Opensolr Web Crawler indexes it: start responding within 5 seconds, be allowed by robots.txt, carry no noindex or nofollow meta robots tag, return HTTP 200 (301 and 302 are followed), and have a real title. URLs with a ? query string are crawled but not indexed.</description>
<category>OPENSOLR GUIDE-Enterprise Site Search</category>
</item>
<item>
<title>API - Get Index Request Handlers</title>
<link>https://opensolr.com/learn/api-index-management/114/api-get-index-request-handlers</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/114/api-get-index-request-handlers</guid>
<description>Read back the request handlers declared in the solrconfig.xml of an Opensolr Index with the request_handlers API endpoint. One GET with core_name lists the query endpoints the index actually exposes, such as /select, /update and /suggest, so you can confirm what your application is allowed to call.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Get Available Regions</title>
<link>https://opensolr.com/learn/api-index-management/113/api-get-available-regions</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/113/api-get-available-regions</guid>
<description>Find out where you can put an index: the regions endpoint (alias server_country) lists every server region open to you, and vector_regions narrows it to those that hold embeddings. These are the identifiers, such as FRANKFURT_GERMANY, that create_index and create_cluster expect.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>Opensolr Index fails to reload when AnalyzingInfixSuggester is used as a Suggester</title>
<link>https://opensolr.com/learn/solr-errors/112/opensolr-index-fails-to-reload-when-analyzinginfixsuggester-is-used-as-a-suggester</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/112/opensolr-index-fails-to-reload-when-analyzinginfixsuggester-is-used-as-a-suggester</guid>
<description>Suggesters sharing one data directory make a reload fail with LockObtainFailedException on analyzingInfixSuggesterIndexDir/write.lock. Give every AnalyzingInfixSuggester its own indexPath in solrconfig_extra.xml, move to BlendedInfixLookupFactory, or drop the suggester. Drupal exports omit it.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Drupal Known Issues Clip</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/111/drupal-known-issues-clip</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/111/drupal-known-issues-clip</guid>
<description>Video walkthrough of the config traps Drupal Search API sets for Solr: pulling the wrong Solr version config zip, schema conflicts with data already in the index, fields referenced without their field type defined, HTTP Basic Auth for Opensolr, and the Path versus SolrCore mix up that stops indexing.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>ICU Library Errors</title>
<link>https://opensolr.com/learn/solr-errors/110/icu-library-errors</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/110/icu-library-errors</guid>
<description>Error loading class solr.ICUCollationField means the ICU library is not enabled on your server, so a schema sorting names across languages, collating accents and umlauts or normalizing Unicode will not load. Email support@opensolr.com to switch ICU on, then reload. Multilingual Drupal hits this most.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Drupal 6.x strings and integers</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/109/drupal-6.x-strings-and-integers</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/109/drupal-6.x-strings-and-integers</guid>
<description>Drupal 6.x ships solrconfig_extra.xml with numbers wrapped in str tags, so Solr errors on accuracy, maxEdits, minPrefix, maxInspections, minQueryLength, maxQueryFrequency and thresholdTokenFrequency. Retype whole numbers as int and decimals as float in the Config Files Editor, then Reload the index.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>Opensolr Connection Issues</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/108/opensolr-connection-issues</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/108/opensolr-connection-issues</guid>
<description>Path versus SolrCore in Drupal, and why a 404 NOT FOUND on your Opensolr Index base URL is not a broken connection: only handlers such as /select answer. Set Path to a single forward slash, SolrCore to the index name, use /solrcloud in SolrCloud mode, and ask support to bridge Solr version mismatches.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>Solr Configuration Files Dependency Flow</title>
<link>https://opensolr.com/learn/solr-configuration-files/106/solr-configuration-files-dependency-flow</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/106/solr-configuration-files-dependency-flow</guid>
<description>Solr configuration files reference each other, so upload order decides whether the index reloads or errors. Send three zip archives to the Opensolr Index control panel: dependencies first, meaning stopwords, synonyms and schema-extra.xml, then schema.xml, then solrconfig.xml last.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Can not update/upload configuration files</title>
<link>https://opensolr.com/learn/solr-errors/105/can-not-updateupload-configuration-files</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/105/can-not-updateupload-configuration-files</guid>
<description>Config uploads failing with unknown type, missing field or unresolvable reference errors are a dependency order problem: schema.xml cannot see types living in schema_extra_types.xml. The Opensolr Config Files Uploader orders a zip for you. By hand: extras, then schema.xml, then solrconfig.xml.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Undefined field _text_</title>
<link>https://opensolr.com/learn/solr-errors/104/undefined-field-_text_</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/104/undefined-field-_text_</guid>
<description>Undefined field _text_ means a query points at the catch all field _text_ that your schema.xml never defines. It is a convention, not a built in Solr field. Add _text_ as a multiValued text_general field fed by copyField from title, description and content, or point df at a field that exists.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Drupal Connection Configuration Issue</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/103/drupal-connection-configuration-issue</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/103/drupal-connection-configuration-issue</guid>
<description>Your Drupal site reports the Solr server as unavailable, or indexing throws connection errors. Install the latest Search API Opensolr, pick Solr with Basic Auth, copy the credentials from the Security tab of your Opensolr Index, drop special characters such as @ and %, upload the config zip, then Reload.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>GDPR Privacy Agreement</title>
<link>https://opensolr.com/learn/security/101/gdpr-privacy-agreement</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/101/gdpr-privacy-agreement</guid>
<description>Opensolr GDPR agreement: an account is an email address and a password, nothing more. No payment data is stored, billing runs through Stripe. Staff never open your index data. TLS everywhere, optional two factor login, no marketing mail, and erasure or portability requests answered in thirty days.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Order, Login &amp; Get Started — Placing Your First Opensolr Index Order</title>
<link>https://opensolr.com/learn/billing/100/order-login-get-started-placing-your-first-opensolr-index-order</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/100/order-login-get-started-placing-your-first-opensolr-index-order</guid>
<description>Placing a first Opensolr order: sign up or log in, pick Small, Medium, Large or Enterprise on the pricing page, move the sliders for indexes, disk and bandwidth, pay by card through Stripe or PayPal, and the index is live at once. Also fixes login redirect loops from stale cookies.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Index Tools — Delete by Query &amp; Utilities</title>
<link>https://opensolr.com/learn/opensolr-management-control-panel/99/index-tools-delete-by-query-utilities</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-management-control-panel/99/index-tools-delete-by-query-utilities</guid>
<description>Delete by Query in the Opensolr Tools panel removes only the documents that match, with no full re-index: id:12345 for one record, uri:*site.com/path for a section, a timestamp range for stale data, or *:* to wipe the lot. Preview, delete, Commit. Reload, Reset, Optimize and Restart Solr sit below it.</description>
<category>OPENSOLR GUIDE-Control Panel</category>
</item>
<item>
<title>Account upgrade and refund policy</title>
<link>https://opensolr.com/learn/billing/98/account-upgrade-and-refund-policy</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/98/account-upgrade-and-refund-policy</guid>
<description>Opensolr upgrades and downgrades are pro rated: you pay, or are credited, only the difference for the days not yet used, and the change is live five to ten minutes after you order on the pricing page. A money refund covers new accounts in their first ten days; after that unused days become credit.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Content length exceeds upload limit of 2048 KB</title>
<link>https://opensolr.com/learn/solr-errors/97/content-length-exceeds-upload-limit-of-2048-kb</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/97/content-length-exceeds-upload-limit-of-2048-kb</guid>
<description>The request body sent in a POST request is too large, Content length exceeds upload limit of 2048 KB. Raise formdataUploadLimitInKB, and multipartUploadLimitInKB for files, inside requestDispatcher in solrconfig.xml, then reload. Smaller batches are safer, and giant OR filters hit maxBooleanClauses.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>API - Get list of available environments and servers</title>
<link>https://opensolr.com/learn/api-index-management/93/api-get-list-of-available-environments-and-servers</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/93/api-get-list-of-available-environments-and-servers</guid>
<description>GET get_env lists all Solr environments and servers your account can use, so you know which regions and hostnames are valid before calling create_index. It takes only email and api_key. Use it to plan deployments across global regions or to populate a server picker in your own admin interface.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Get a list of your Opensolr Indexes</title>
<link>https://opensolr.com/learn/api-index-management/92/api-get-a-list-of-your-opensolr-indexes</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/92/api-get-a-list-of-your-opensolr-indexes</guid>
<description>GET get_index_list returns every Opensolr Index on your account together with its name, hostname, server region and status. It needs only email and api_key, no index name, which makes it the discovery call a script runs first before looping over indexes. cURL, PHP and Python samples included.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>How to enable Two Factor Authentication</title>
<link>https://opensolr.com/learn/security/91/how-to-enable-two-factor-authentication</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/91/how-to-enable-two-factor-authentication</guid>
<description>Switching two factor authentication on for an Opensolr login takes a minute: open User, then Two Factor Authentication at opensolr.com/admin/solr_manager/tfa, enter the mobile number the code goes to, then log out and back in to confirm. Shared logins belong in Teams instead.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
<item>
<title>Opensolr Search for WordPress</title>
<link>https://opensolr.com/learn/opensolr-and-wordpress/90/opensolr-search-for-wordpress</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-wordpress/90/opensolr-search-for-wordpress</guid>
<description>The free Opensolr Search plugin replaces the slow SQL powered WordPress search with hybrid AI and keyword search on your own Opensolr Index: real time autocomplete, faceted filters, WooCommerce SKU, attribute and price search, AI Hints and AI Reader, query elevation, analytics, WPML and Polylang.</description>
<category>INTEGRATION-Wordpress</category>
</item>
<item>
<title>Move from schema.xml to managed-schema</title>
<link>https://opensolr.com/learn/solr-configuration-files/89/move-from-schema.xml-to-managed-schema</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/89/move-from-schema.xml-to-managed-schema</guid>
<description>Switch to managed schema mode so the Schema API can add and change fields over HTTP, which Drupal Search API Solr needs: put ManagedIndexSchemaFactory with mutable set to true into solrconfig.xml and reload. Two factories stop the index starting, and hand edits to managed-schema are overwritten.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>Move from managed-schema to schema.xml</title>
<link>https://opensolr.com/learn/solr-configuration-files/88/move-from-managed-schema-to-schema.xml</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/88/move-from-managed-schema-to-schema.xml</guid>
<description>Go back from managed schema to a classic schema.xml you edit yourself: replace the schemaFactory element in solrconfig.xml with ClassicIndexSchemaFactory and reload from the Tools menu. Only one factory may be present or the index will not start, and the Schema API can no longer write.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>API - Create Resilient Cluster</title>
<link>https://opensolr.com/learn/api-cluster-management/84/api-create-resilient-cluster</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-cluster-management/84/api-create-resilient-cluster</guid>
<description>Spin up a Resilient Cluster with the create_cluster API endpoint: send cluster_name and a master_server region such as FRANKFURT_GERMANY, plus optional http_username and http_password. You get replicas with automatic failover. Needs a cluster environment provisioned on your corporate account.</description>
<category>API ENDPOINTS-Cluster Management</category>
</item>
<item>
<title>API - Get Index Details, Info and Stats</title>
<link>https://opensolr.com/learn/api-index-management/81/api-get-index-details-info-and-stats</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/81/api-get-index-details-info-and-stats</guid>
<description>GET get_core_info returns the details, configuration and usage statistics of one Opensolr Index, and additionally reports usage figures for every index on the account. Send email, api_key and core_name. Useful for billing views, disk and document reporting, and per index monitoring in your own tools.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>Support for auto phrase tokenfilter jar</title>
<link>https://opensolr.com/learn/solr-configuration-files/80/support-for-auto-phrase-tokenfilter-jar</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/80/support-for-auto-phrase-tokenfilter-jar</guid>
<description>AutoPhrase TokenFilter indexes multi word expressions such as New York City as one token. If your index will not load with Plugin not found: solr.AutoPhraseTokenFilterFactory, the library is missing. Opensolr support installs it for your Solr version; then add the filter in schema.xml and reload.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>How do I add a lib jar file</title>
<link>https://opensolr.com/learn/solr-configuration-files/79/how-do-i-add-a-lib-jar-file</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-configuration-files/79/how-do-i-add-a-lib-jar-file</guid>
<description>Custom JAR libraries, Solr plugins and third party token filters are installed for you: email the compiled .jar, or a link to its official release page, to support@opensolr.com with your registration address and index name. Then reference it from schema.xml or solrconfig.xml and reload.</description>
<category>SOLR DOCUMENTATION-Configuration</category>
</item>
<item>
<title>API - Get Index Request Log</title>
<link>https://opensolr.com/learn/api-logs-analytics/78/api-get-index-request-log</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-logs-analytics/78/api-get-index-request-log</guid>
<description>GET request_log queries the full request log of an Opensolr Index with Solr query syntax: q, start, rows, sort, fq[] date ranges, faceting on ip, path, q, http_status and core_name, plus json, csv or xml output. Page through every request made to the index, or filter out empty and wildcard queries.</description>
<category>API ENDPOINTS-Logs &amp; Analytics</category>
</item>
<item>
<title>API - Upload solr configuration via zip archive</title>
<link>https://opensolr.com/learn/api-config-files/77/api-upload-solr-configuration-via-zip-archive</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-config-files/77/api-upload-solr-configuration-via-zip-archive</guid>
<description>Deploy a complete Solr config set in one call by POSTing a zip archive to upload_zip_config_files as userfile with core_name. Put schema.xml, solrconfig.xml, stopwords.txt and the other files at the root of the zip, never nested in a subdirectory, and they all land on your Opensolr Index together.</description>
<category>API ENDPOINTS-Config Files</category>
</item>
<item>
<title>API - Get all the Solr configuration files list</title>
<link>https://opensolr.com/learn/api-config-files/76/api-get-all-the-solr-configuration-files-list</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-config-files/76/api-get-all-the-solr-configuration-files-list</guid>
<description>See which configuration files exist on an Opensolr Index with the get_all_config_files API endpoint. One GET with email, api_key and core_name returns the whole file list, so you can audit schema.xml, solrconfig.xml and the resource text files before downloading, replacing or deleting any of them.</description>
<category>API ENDPOINTS-Config Files</category>
</item>
<item>
<title>API - Get error log</title>
<link>https://opensolr.com/learn/api-logs-analytics/75/api-get-error-log</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-logs-analytics/75/api-get-error-log</guid>
<description>GET get_error_log pulls the recent ERROR, WARN and SEVERE messages Solr recorded for your Opensolr Index. Read it when queries return unexpected results, indexing silently fails, or HTTP 400 and 500 codes appear in your request log. Takes email, api_key and core_name. cURL, PHP and Python samples.</description>
<category>API ENDPOINTS-Logs &amp; Analytics</category>
</item>
<item>
<title>API - Reload index</title>
<link>https://opensolr.com/learn/api-index-management/74/api-reload-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/74/api-reload-index</guid>
<description>GET reload_core reloads an Opensolr Index so configuration changes take effect with no server restart and no downtime. Call it every time you upload a new schema.xml or solrconfig.xml through the Upload Config or Upload Zip endpoints, otherwise the new settings stay inactive and your changes do nothing.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Delete configuration file</title>
<link>https://opensolr.com/learn/api-config-files/73/api-delete-configuration-file</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-config-files/73/api-delete-configuration-file</guid>
<description>Remove a configuration file from an Opensolr Index with the delete_config_file API endpoint: file_name without the extension, file_extension without the period. Deleting an essential file such as schema.xml or solrconfig.xml stops the index from loading, so keep a backup or a replacement ready.</description>
<category>API ENDPOINTS-Config Files</category>
</item>
<item>
<title>API - Upload or update your opensolr configuration files</title>
<link>https://opensolr.com/learn/api-config-files/72/api-upload-or-update-your-opensolr-configuration-files</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-config-files/72/api-upload-or-update-your-opensolr-configuration-files</guid>
<description>Push one Solr configuration file to an Opensolr Index with a multipart POST to upload_config_file: send core_name plus userfile to add or overwrite schema.xml, solrconfig.xml or any supporting resource. Reload the index afterwards for the change to take effect. cURL, PHP and Python examples.</description>
<category>API ENDPOINTS-Config Files</category>
</item>
<item>
<title>API - Remove IP access</title>
<link>https://opensolr.com/learn/api-security/71/api-remove-ip-access</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-security/71/api-remove-ip-access</guid>
<description>delete_ip API endpoint revokes an IP access rule from an Opensolr Index by IP address and handler, dropping that entry from the allow list at once. Requires email, api_key, core_name, ip and handler. Read get_ip_list first so you do not lock your own app out of /update or /select.</description>
<category>API ENDPOINTS-Security</category>
</item>
<item>
<title>API - Get index IP list</title>
<link>https://opensolr.com/learn/api-security/70/api-get-index-ip-list</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-security/70/api-get-index-ip-list</guid>
<description>get_ip_list API endpoint returns every IP access rule on an Opensolr Index, each with the handler it protects, so you can audit the firewall allow list before changing it. Takes email, api_key and core_name and answers JSON. See which addresses still have access, from cURL, PHP or Python.</description>
<category>API ENDPOINTS-Security</category>
</item>
<item>
<title>API - Add index IP access rule</title>
<link>https://opensolr.com/learn/api-security/69/api-add-index-ip-access-rule</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-security/69/api-add-index-ip-access-rule</guid>
<description>add_ip API endpoint grants one IP address access to a single Solr handler on your Opensolr Index, so you can lock /update to your own server while /select stays open to public search queries. Parameters: email, api_key, core_name, ip and handler. cURL, PHP and Python examples.</description>
<category>API ENDPOINTS-Security</category>
</item>
<item>
<title>API - Get index full status</title>
<link>https://opensolr.com/learn/api-index-management/68/api-get-index-full-status</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/68/api-get-index-full-status</guid>
<description>GET get_core_status returns the complete Solr status of one Opensolr Index: core statistics, document counts, index size and internal status fields, exactly as Solr reports them. Send email, api_key and core_name to check index health, disk footprint or capacity. cURL, PHP and Python samples.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Optimize a Solr Index</title>
<link>https://opensolr.com/learn/api-index-management/67/api-optimize-a-solr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/67/api-optimize-a-solr-index</guid>
<description>GET optimize merges every segment of an Opensolr Index into one, speeding up queries and reclaiming the disk space held by deleted documents. It runs asynchronously and returns straight away; the index stays searchable but can temporarily double in size, so avoid writing to it while it runs.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Ping Solr Environment</title>
<link>https://opensolr.com/learn/api-index-management/66/api-ping-solr-environment</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/66/api-ping-solr-environment</guid>
<description>GET ping_server health checks a single Opensolr cluster server by hostname and tells you whether that Solr environment is up, reachable and answering requests. Wire it into Nagios, Zabbix, Datadog or UptimeRobot alerting, load balancer health checks, pre-flight checks before big indexing jobs, or CI/CD.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Commit data for a Solr Index</title>
<link>https://opensolr.com/learn/api-index-management/65/api-commit-data-for-a-solr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/65/api-commit-data-for-a-solr-index</guid>
<description>GET commit makes pending additions, updates and deletions visible in search results. Solr buffers writes until a commit runs, so call this endpoint with email, api_key and core_name whenever freshly posted documents are missing, not searchable, or not showing up yet. cURL, PHP and Python samples.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Remove HTTP Auth</title>
<link>https://opensolr.com/learn/api-security/64/api-remove-http-auth</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-security/64/api-remove-http-auth</guid>
<description>remove_http_auth API endpoint drops HTTP Basic Auth from an Opensolr Index, so clients query it with no username or password. Pass email, api_key and core_name: the config reloads on every replica, stored credentials are cleared, and a call that answered 401 now answers 200.</description>
<category>API ENDPOINTS-Security</category>
</item>
<item>
<title>API - Update HTTP Auth</title>
<link>https://opensolr.com/learn/api-security/63/api-update-http-auth</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-security/63/api-update-http-auth</guid>
<description>GET update_http_auth sets or changes the HTTP Basic Authentication username and password guarding an Opensolr Index. Once it is on, every query, update and admin request to the Solr endpoint must carry those credentials, so configure your application first or you will start getting HTTP 401 errors.</description>
<category>API ENDPOINTS-Security</category>
</item>
<item>
<title>​API - Stop the Web Crawler</title>
<link>https://opensolr.com/learn/api-web-crawler/62/api-stop-the-web-crawler</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/62/api-stop-the-web-crawler</guid>
<description>stop_crawl API endpoint permanently stops the Opensolr Web Crawler for an index: every running process is killed and the cron schedule removed, so nothing crawls again until you start it by hand. To halt crawling for a while and keep the schedule, use pause_crawl instead.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Start the Web Crawler</title>
<link>https://opensolr.com/learn/api-web-crawler/61/api-start-the-web-crawler</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-web-crawler/61/api-start-the-web-crawler</guid>
<description>start_crawl API endpoint launches the Opensolr Web Crawler for an index: crawl modes 1 to 6 follow domain, host or path links at full depth or shallow depth 1, plus max_threads, relax delay, max_pages, max_traffic, max_filesize, follow_docs, clean, schedule, curl or chrome rendering.</description>
<category>API ENDPOINTS-Web Crawler</category>
</item>
<item>
<title>API - Download backup file</title>
<link>https://opensolr.com/learn/api-backup-management/60/api-download-backup-file</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-backup-management/60/api-download-backup-file</guid>
<description>Fetch a backup archive over HTTPS from https://backup.opensolr.com/INDEX_NAME/FILE_NAME, using the HTTP Basic Auth credentials of the Opensolr Index, user opensolr and your Secret API Key by default, not your account login. It holds the latest snapshot plus daily archives from the last 10 days.</description>
<category>API ENDPOINTS-Backup Management</category>
</item>
<item>
<title>API - Get list of backup files</title>
<link>https://opensolr.com/learn/api-backup-management/59/api-get-list-of-backup-files</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-backup-management/59/api-get-list-of-backup-files</guid>
<description>List every snapshot archive held for an Opensolr Index with the get_backup_files_list API endpoint. One GET with email, api_key and core_name returns the file names you need before downloading or restoring one, which is how a recovery script finds the newest backup. cURL, PHP and Python examples.</description>
<category>API ENDPOINTS-Backup Management</category>
</item>
<item>
<title>API - Create backup</title>
<link>https://opensolr.com/learn/api-backup-management/58/api-create-backup</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-backup-management/58/api-create-backup</guid>
<description>Take a snapshot of an Opensolr Index with the create_backup API endpoint: one GET on /solr_manager/api/create_backup with email, api_key and core_name. The archive lands on the Opensolr backup servers, ready to list, download or restore later. cURL, PHP and Python examples for disaster recovery.</description>
<category>API ENDPOINTS-Backup Management</category>
</item>
<item>
<title>API - Replicate Solr Index</title>
<link>https://opensolr.com/learn/api-index-management/57/api-replicate-solr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/57/api-replicate-solr-index</guid>
<description>GET replicate_index configures master to replica replication between two Opensolr Indexes that already exist: index_name is the master, target_index is the replica. The replica then polls the master for updates on its own, giving you redundancy and read load balancing without touching Solr config.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Delete Solr Index</title>
<link>https://opensolr.com/learn/api-index-management/56/api-delete-solr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/56/api-delete-solr-index</guid>
<description>GET delete_core, alias delete_index, permanently destroys an Opensolr Index and every document in it. It cannot be undone, so take a backup first. Watch the parameter name: delete_index expects index_name while delete_core expects core_name. cURL, PHP and Python samples for index lifecycle cleanup.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>API - Create New Solr Index</title>
<link>https://opensolr.com/learn/api-index-management/55/api-create-new-solr-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/api-index-management/55/api-create-new-solr-index</guid>
<description>GET create_index, alias create_core, provisions a brand new Opensolr Index on the server region you choose. Send email, api_key, index_name and a region identifier such as DE-SOLR-9 taken from the Get Available Regions endpoint. cURL, PHP and Python samples for scripted, automated index creation.</description>
<category>API ENDPOINTS-Index Management</category>
</item>
<item>
<title>My schema.xml doesn&apos;t take effect</title>
<link>https://opensolr.com/learn/solr-errors/53/my-schema.xml-doesnt-take-effect</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/53/my-schema.xml-doesnt-take-effect</guid>
<description>You edited schema.xml, saved it, and Solr still uses the old fields. ManagedIndexSchemaFactory and managed-schema are overriding it: replace that schemaFactory block in solrconfig.xml with ClassicIndexSchemaFactory and click Reload. Also covers forgotten reloads, case sensitive names, missing fieldTypes.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Data won&apos;t get indexed.</title>
<link>https://opensolr.com/learn/solr-errors/51/data-wont-get-indexed</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/51/data-wont-get-indexed</guid>
<description>Documents were sent but nothing is searchable and q=*:* returns 0 results, or fewer than expected. Usual reasons: no commit was issued, field names do not match schema.xml exactly (case sensitive), a corrupted data folder, HTTP 401 from wrong Basic Auth, or oversized documents. Start at the Error Log.</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Our Solr Cloud Services</title>
<link>https://opensolr.com/learn/billing/50/our-solr-cloud-services</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/50/our-solr-cloud-services</guid>
<description>The four shapes Opensolr runs your Solr in: Standalone Shared Solr Cloud, Simple Dedicated, Dedicated Resilient Cluster and Multi Region Failover behind one endpoint. Same control panel and API everywhere, so moving up is a plan change and not a migration. Plus the Web Crawler and consultancy.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Opensolr Web Crawler — Site Search Solution &amp; Platform Guide</title>
<link>https://opensolr.com/learn/web-crawler/46/opensolr-web-crawler-site-search-solution-platform-guide</link>
<guid isPermaLink="true">https://opensolr.com/learn/web-crawler/46/opensolr-web-crawler-site-search-solution-platform-guide</guid>
<description>Platform tour of Opensolr: managed Apache Solr hosting plus a Web Crawler that turns any index into an Algolia or Elasticsearch alternative, with 1024 dim multilingual E5 vectors on __dense indexes, AI summarization, an embeddable search UI, query elevation, analytics, backups and a Drupal module.</description>
<category>OPENSOLR GUIDE-Enterprise Site Search</category>
</item>
<item>
<title>JTS Polygonal Geo-Spatial search support</title>
<link>https://opensolr.com/learn/solr-errors/43/jts-polygonal-geo-spatial-search-support</link>
<guid isPermaLink="true">https://opensolr.com/learn/solr-errors/43/jts-polygonal-geo-spatial-search-support</guid>
<description>JTS Topology Suite gives an Opensolr Index polygon and multi polygon geo spatial search, past the circles and bounding boxes plain Solr can do. It is on by default on most Opensolr servers and regions, needs no setup, and works with SpatialRecursivePrefixTreeFieldType, BBoxField and Intersects(POLYGON(...)).</description>
<category>SOLR DOCUMENTATION-Errors</category>
</item>
<item>
<title>Drupal Setup with Opensolr</title>
<link>https://opensolr.com/learn/opensolr-and-drupal/37/drupal-setup-with-opensolr</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-and-drupal/37/drupal-setup-with-opensolr</guid>
<description>Three ways to connect Drupal to Opensolr, compared: the standalone Opensolr Search module with vector plus keyword search, facets, autocomplete, analytics and optional AI in about 3 minutes; Search API Opensolr as a drop in swap for Search API Solr with AutoConfigure; or manual Search API Solr setup.</description>
<category>INTEGRATION-Drupal</category>
</item>
<item>
<title>Solr Cloud Free Membership</title>
<link>https://opensolr.com/learn/billing/34/solr-cloud-free-membership</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/34/solr-cloud-free-membership</guid>
<description>The Opensolr free plan is free forever, not a trial: no credit card, no countdown, no expiry date. You get one fully managed Opensolr Index, the full Apache Solr API and the WordPress and Drupal plugins. Crawler, backups, analytics and AI search are paid. An index idle for 30 days can be removed.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>How can I save disk space for my index?</title>
<link>https://opensolr.com/learn/opensolr-resources/33/how-can-i-save-disk-space-for-my-index</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/33/how-can-i-save-disk-space-for-my-index</guid>
<description>Shrink a Solr index on disk, and know what each trade costs: int instead of tint slows range queries, dropping stored fields you never display means fetching them from your own database, omitNorms removes length scoring, omitPositions ends phrase matching, and NGram fields multiply terms and disk with them.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>How can I save Transfer Bandwidth?</title>
<link>https://opensolr.com/learn/opensolr-resources/32/how-can-i-save-transfer-bandwidth</link>
<guid isPermaLink="true">https://opensolr.com/learn/opensolr-resources/32/how-can-i-save-transfer-bandwidth</guid>
<description>Three habits that cut the outgoing traffic billed on an Opensolr Index. Cache results your side with Memcached or Redis so reloads and autocomplete keystrokes never reach Solr. Send rows and fl on /select instead of fetching 100,000 records to show 10. Turn on gzip. The quota is per index, so a replica doubles it.</description>
<category>OPENSOLR GUIDE-Account Resources</category>
</item>
<item>
<title>Manage Your Billing — Payment Methods, Invoices &amp; Account Email</title>
<link>https://opensolr.com/learn/billing/28/manage-your-billing-payment-methods-invoices-account-email</link>
<guid isPermaLink="true">https://opensolr.com/learn/billing/28/manage-your-billing-payment-methods-invoices-account-email</guid>
<description>Every Opensolr billing task in one place: update the card in the Stripe Customer Portal, edit billing name, address and company in the Billing Admin Area, download invoices from Billing then Invoices Dashboard, change the invoice email yourself, and ask support to change the login email.</description>
<category>OPENSOLR GUIDE-Pricing &amp; Billing</category>
</item>
<item>
<title>Solr Cloud data security</title>
<link>https://opensolr.com/learn/security/21/solr-cloud-data-security</link>
<guid isPermaLink="true">https://opensolr.com/learn/security/21/solr-cloud-data-security</guid>
<description>Three mechanisms protect an Opensolr Index and they compose: IP access rules set per request handler, so /update can be limited to your backend while /select stays broader, HTTP authentication on every handler including the Solr admin interface, and TLS encryption on all traffic.</description>
<category>OPENSOLR GUIDE-Data Security</category>
</item>
</channel>
</rss>
