Add Solr search: EXT:solr 14 integration and JSON search endpoint
Apache Solr 10 runs on a dedicated VPS behind a Caddy HTTPS proxy (vitecsolr.evomedien.de) because the managed webserver only allows outgoing standard ports. Credentials stay out of git: the site config carries %env()% placeholders resolved via putenv() in the git-ignored config/system/additional.php. - composer: apache-solr-for-typo3/solr 14.0.0-RC1 (the only line compatible with TYPO3 14; final 14.0.0 will arrive via composer update) - config.yaml: read connection https/443, core_en per language, env placeholder credentials; .gitignore covers additional.php - setup.typoscript: config.index_enable = 1 (page indexing silently refuses without it), solr_pi_results JSON renderer registration, results highlighting, and content field extraction from tt_content rows - the headless JSON output has no TYPO3SEARCH markers, so the default page content extraction indexed an empty content field - SearchJsonRenderer (renderer #27): JSON output for the search plugin on /search. GET q/page in; { query, page, resultsPerPage, numFound, totalPages, results[], suggestions } out. Disables the page cache per request: config.no_cache is gone in TYPO3 v14, and q/page are excluded from cHash, so cached variants would collide - ext_localconf.php: q and page added to cacheHash excludedParameters - SolrIndexCommand (vitec:solr-index): works the index queue from the CLI with connection diagnostics and a --debug single-step mode - EXT:solr 14 ships no console commands and the backend button indexes one item per click
This commit is contained in:
332
composer.lock
generated
332
composer.lock
generated
@@ -4,8 +4,123 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "727d61bcbce8571b4b05c61cf61813aa",
|
||||
"content-hash": "d902283b2e3364081e0daec494c39cef",
|
||||
"packages": [
|
||||
{
|
||||
"name": "apache-solr-for-typo3/solr",
|
||||
"version": "14.0.0-RC1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/TYPO3-Solr/ext-solr.git",
|
||||
"reference": "96834e83592d59c350005216821ee502cfee8ece"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/TYPO3-Solr/ext-solr/zipball/96834e83592d59c350005216821ee502cfee8ece",
|
||||
"reference": "96834e83592d59c350005216821ee502cfee8ece",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-dom": "*",
|
||||
"ext-json": "*",
|
||||
"ext-libxml": "*",
|
||||
"ext-pdo": "*",
|
||||
"ext-simplexml": "*",
|
||||
"php": "^8.2",
|
||||
"solarium/solarium": "7.0.0",
|
||||
"typo3/cms-backend": "*",
|
||||
"typo3/cms-core": "^v14.3.0",
|
||||
"typo3/cms-extbase": "*",
|
||||
"typo3/cms-fluid": "*",
|
||||
"typo3/cms-frontend": "*",
|
||||
"typo3/cms-install": "*",
|
||||
"typo3/cms-reports": "*",
|
||||
"typo3/cms-scheduler": "*",
|
||||
"typo3/cms-tstemplate": "*"
|
||||
},
|
||||
"replace": {
|
||||
"apache-solr-for-typo3/solrfluid": "*",
|
||||
"apache-solr-for-typo3/solrfluidgrouping": "*",
|
||||
"typo3-ter/solr": "self.version",
|
||||
"typo3-ter/solrfluid": "*",
|
||||
"typo3-ter/solrfluidgrouping": "*"
|
||||
},
|
||||
"require-dev": {
|
||||
"brianium/paratest": "^7.8.5",
|
||||
"dg/bypass-finals": "^1.9",
|
||||
"phpstan/phpstan": "^2.1.34",
|
||||
"phpstan/phpstan-phpunit": "^2.0.18",
|
||||
"phpunit/phpunit": "^11.5.55",
|
||||
"typo3/cms-fluid-styled-content": "*",
|
||||
"typo3/coding-standards": "v0.8.0",
|
||||
"typo3/testing-framework": "^9.5.0"
|
||||
},
|
||||
"type": "typo3-cms-extension",
|
||||
"extra": {
|
||||
"typo3/cms": {
|
||||
"web-dir": ".Build/Web",
|
||||
"extension-key": "solr"
|
||||
},
|
||||
"TYPO3-Solr": {
|
||||
"ext-solrfal": [],
|
||||
"stack-for-ci": {
|
||||
"sclable/xml-lint": "*"
|
||||
},
|
||||
"version-matrix": {
|
||||
"ext-tika": "^14.0",
|
||||
"configset": "ext_solr_14_0_0",
|
||||
"Apache-Solr": [
|
||||
"10.0.0"
|
||||
],
|
||||
"ext-solrfal": "^14.0",
|
||||
"ext-solrconsole": "^14.0",
|
||||
"ext-solrdebugtools": "^14.0"
|
||||
}
|
||||
},
|
||||
"branch-alias": {
|
||||
"dev-main": "14.0.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"ApacheSolrForTypo3\\Solr\\": "Classes/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"GPL-3.0-or-later"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "dkd Internet Service GmbH",
|
||||
"email": "info@dkd.de",
|
||||
"homepage": "https://www.dkd.de"
|
||||
}
|
||||
],
|
||||
"description": "Apache Solr for TYPO3 - Apache Solr for TYPO3 is the enterprise search server you were looking for with special features such as Faceted Search or Synonym Support and incredibly fast response times of results within milliseconds.",
|
||||
"homepage": "https://www.typo3-solr.com",
|
||||
"keywords": [
|
||||
"TYPO3 CMS",
|
||||
"search",
|
||||
"solr",
|
||||
"typo3"
|
||||
],
|
||||
"support": {
|
||||
"docs": "https://docs.typo3.org/p/apache-solr-for-typo3/solr/main/en-us/",
|
||||
"email": "info@dkd.de",
|
||||
"forum": "https://talk.typo3.org",
|
||||
"issues": "https://github.com/TYPO3-Solr/ext-solr/issues",
|
||||
"slack": "https://typo3.slack.com/archives/C02FF05Q4",
|
||||
"source": "https://github.com/TYPO3-Solr/ext-solr"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://www.typo3-solr.com/",
|
||||
"type": "custom"
|
||||
}
|
||||
],
|
||||
"time": "2026-07-17T15:16:50+00:00"
|
||||
},
|
||||
{
|
||||
"name": "b13/container",
|
||||
"version": "3.2.3",
|
||||
@@ -2015,6 +2130,68 @@
|
||||
],
|
||||
"time": "2026-07-16T22:23:49+00:00"
|
||||
},
|
||||
{
|
||||
"name": "halaxa/json-machine",
|
||||
"version": "1.2.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/halaxa/json-machine.git",
|
||||
"reference": "8bf0b0ff6ff60ab480778eaa5ad7d505b442c2d4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/halaxa/json-machine/zipball/8bf0b0ff6ff60ab480778eaa5ad7d505b442c2d4",
|
||||
"reference": "8bf0b0ff6ff60ab480778eaa5ad7d505b442c2d4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "7.2 - 8.5"
|
||||
},
|
||||
"require-dev": {
|
||||
"ext-json": "*",
|
||||
"friendsofphp/php-cs-fixer": "^3.0",
|
||||
"phpstan/phpstan": "^1.10",
|
||||
"phpunit/phpunit": "^8.0"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-json": "To run JSON Machine out of the box without custom decoders.",
|
||||
"guzzlehttp/guzzle": "To run example with GuzzleHttp"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"files": [
|
||||
"src/functions.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"JsonMachine\\": "src/"
|
||||
},
|
||||
"exclude-from-classmap": [
|
||||
"src/autoloader.php"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"Apache-2.0"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Filip Halaxa",
|
||||
"email": "filip@halaxa.cz"
|
||||
}
|
||||
],
|
||||
"description": "Efficient, easy-to-use and fast JSON pull parser",
|
||||
"support": {
|
||||
"issues": "https://github.com/halaxa/json-machine/issues",
|
||||
"source": "https://github.com/halaxa/json-machine/tree/1.2.6"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://ko-fi.com/G2G57KTE4",
|
||||
"type": "other"
|
||||
}
|
||||
],
|
||||
"time": "2025-12-05T14:53:09+00:00"
|
||||
},
|
||||
{
|
||||
"name": "justinrainbow/json-schema",
|
||||
"version": "6.10.0",
|
||||
@@ -4052,6 +4229,82 @@
|
||||
},
|
||||
"time": "2023-09-03T09:24:00+00:00"
|
||||
},
|
||||
{
|
||||
"name": "solarium/solarium",
|
||||
"version": "7.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/solariumphp/solarium.git",
|
||||
"reference": "44739c15341c308ea5ba79942fa4c9f4198679c4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/solariumphp/solarium/zipball/44739c15341c308ea5ba79942fa4c9f4198679c4",
|
||||
"reference": "44739c15341c308ea5ba79942fa4c9f4198679c4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"composer-runtime-api": ">=2.0",
|
||||
"ext-date": "*",
|
||||
"ext-json": "*",
|
||||
"ext-pcre": "*",
|
||||
"halaxa/json-machine": "^1.1",
|
||||
"php": "^8.1",
|
||||
"psr/event-dispatcher": "^1.0",
|
||||
"psr/http-client": "^1.0",
|
||||
"psr/http-factory": "^1.0",
|
||||
"symfony/event-dispatcher-contracts": "^2.0 || ^3.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"2tvenom/cborencode": "^1.0",
|
||||
"escapestudios/symfony2-coding-standard": "^3.11",
|
||||
"ext-curl": "*",
|
||||
"ext-iconv": "*",
|
||||
"nyholm/psr7": "^1.8",
|
||||
"php-http/guzzle7-adapter": "^1.0",
|
||||
"phpstan/extension-installer": "^1.4",
|
||||
"phpstan/phpstan": "^2.1.41",
|
||||
"phpstan/phpstan-deprecation-rules": "^2.0",
|
||||
"phpstan/phpstan-phpunit": "^2.0",
|
||||
"phpunit/phpunit": "^10.5",
|
||||
"rawr/phpunit-data-provider": "^3.3",
|
||||
"roave/security-advisories": "dev-master",
|
||||
"spomky-labs/cbor-php": "^3.1",
|
||||
"symfony/event-dispatcher": "^5.0 || ^6.0 || ^7.0 || ^8.0"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-curl": "Needed to use the cURL adapter",
|
||||
"spomky-labs/cbor-php": "Needed to use CBOR formatted requests with Solr 9.3+"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Solarium\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "See GitHub contributors",
|
||||
"homepage": "https://github.com/solariumphp/solarium/contributors"
|
||||
}
|
||||
],
|
||||
"description": "PHP Solr client",
|
||||
"homepage": "http://www.solarium-project.org",
|
||||
"keywords": [
|
||||
"php",
|
||||
"search",
|
||||
"solr"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/solariumphp/solarium/issues",
|
||||
"source": "https://github.com/solariumphp/solarium/tree/7.0.0"
|
||||
},
|
||||
"time": "2026-04-27T07:40:48+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/cache",
|
||||
"version": "v8.0.15",
|
||||
@@ -9238,6 +9491,76 @@
|
||||
],
|
||||
"time": "2026-08-11T07:21:33+00:00"
|
||||
},
|
||||
{
|
||||
"name": "typo3/cms-reports",
|
||||
"version": "v14.3.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/TYPO3-CMS/reports.git",
|
||||
"reference": "4e28680d94dd21f149a045a847ccb4f42b452843"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/TYPO3-CMS/reports/zipball/4e28680d94dd21f149a045a847ccb4f42b452843",
|
||||
"reference": "4e28680d94dd21f149a045a847ccb4f42b452843",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"typo3/cms-core": "14.3.6"
|
||||
},
|
||||
"conflict": {
|
||||
"typo3/cms": "*"
|
||||
},
|
||||
"suggest": {
|
||||
"typo3/cms-scheduler": "Determine system's status and send it via email"
|
||||
},
|
||||
"type": "typo3-cms-framework",
|
||||
"extra": {
|
||||
"typo3/cms": {
|
||||
"Package": {
|
||||
"partOfFactoryDefault": true
|
||||
},
|
||||
"extension-key": "reports"
|
||||
},
|
||||
"branch-alias": {
|
||||
"dev-main": "14.3.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"TYPO3\\CMS\\Reports\\": "Classes/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"GPL-2.0-or-later"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "TYPO3 Core Team",
|
||||
"email": "typo3cms@typo3.org",
|
||||
"role": "Developer"
|
||||
}
|
||||
],
|
||||
"description": "TYPO3 CMS Reports - Show status reports and installed services in the (System>Reports) backend module.",
|
||||
"homepage": "https://typo3.community/",
|
||||
"support": {
|
||||
"chat": "https://typo3.community/meet/slack/",
|
||||
"docs": "https://docs.typo3.org/",
|
||||
"forum": "https://talk.typo3.org/",
|
||||
"issues": "https://forge.typo3.org/issues/",
|
||||
"rss": "https://news.typo3.com/rss/",
|
||||
"security": "https://typo3.org/security/",
|
||||
"source": "https://github.com/TYPO3/typo3/"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://typo3.org/membership",
|
||||
"type": "membership"
|
||||
}
|
||||
],
|
||||
"time": "2026-08-11T07:21:33+00:00"
|
||||
},
|
||||
{
|
||||
"name": "typo3/cms-rte-ckeditor",
|
||||
"version": "v14.3.6",
|
||||
@@ -9895,14 +10218,15 @@
|
||||
"aliases": [],
|
||||
"minimum-stability": "stable",
|
||||
"stability-flags": {
|
||||
"apache-solr-for-typo3/solr": 5,
|
||||
"friendsoftypo3/headless": 5
|
||||
},
|
||||
"prefer-stable": false,
|
||||
"prefer-lowest": false,
|
||||
"platform": [],
|
||||
"platform-dev": [],
|
||||
"platform": {},
|
||||
"platform-dev": {},
|
||||
"platform-overrides": {
|
||||
"php": "8.4.0"
|
||||
},
|
||||
"plugin-api-version": "2.3.0"
|
||||
"plugin-api-version": "2.9.0"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user