{"id":2652,"date":"2023-02-01T14:56:20","date_gmt":"2023-02-01T14:56:20","guid":{"rendered":"https:\/\/orfeolibre.org\/inicio\/?post_type=knowledgebase&#038;p=2652"},"modified":"2023-08-30T13:29:56","modified_gmt":"2023-08-30T13:29:56","slug":"instalacion-de-servicio-busqueda-de-texto-completo-sphinx","status":"publish","type":"knowledgebase","link":"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/","title":{"rendered":"Servicio b\u00fasqueda  Sphinx Search"},"content":{"rendered":"<h2>Descripci\u00f3n<\/h2>\n<p>Sphinx Search es un motor de indexaci\u00f3n de texto ( y xml) que nos permite hacer b\u00fasqueda de los contenidos de los documentos.<\/p>\n<h2>Prerequistos<\/h2>\n<p>En principio un linux (o Windows) y una fuente de datos (vamos a usar una BD)<\/p>\n<h2>Configuraci\u00f3n<\/h2>\n<h3>1. Instalaci\u00f3n<\/h3>\n<p>Suele haber paquetes para todas las distribuciones y windows:<\/p>\n<p>Instale la aplicaci\u00f3n.<\/p>\n<p>En Centos:\u00a0 yum install\u00a0 sphinx<\/p>\n<p>En Debian-Ubuntu:\u00a0\u00a0 apt-get install sphinxsearch<\/p>\n<p>En MS Windows: \u00a0<a href=\"http:\/\/sphinxsearch.com\/downloads\/current\/\">http:\/\/sphinxsearch.com\/downloads\/current\/<\/a><\/p>\n<p>La libreria para PHP que se ha usado es sphinxapi.php que se puede descargar de<\/p>\n<p><a href=\"https:\/\/github.com\/sphinxsearch\/sphinx\/blob\/master\/api\/sphinxapi.php\">https:\/\/github.com\/sphinxsearch\/sphinx\/blob\/master\/api\/sphinxapi.php<\/a><\/p>\n<p>$** Ya recomiendan cambiarlo por SphinxQL<br \/>\n$** Sphinx usa MySQL &#8211; MariaDB como protocolo para SphinxQL entonces se puede usar todo como si fuera un MySQL &#8211; MariaDB.<br \/>\n$** Aqui dicen como cambiar \u00a0 <a href=\"http:\/\/sphinxsearch.com\/blog\/2013\/07\/23\/from-api-to-sphinxql-and-back-again\/\">http:\/\/sphinxsearch.com\/blog\/2013\/07\/23\/from-api-to-sphinxql-and-back-again\/<\/a><\/p>\n<h3>2. Configuraci\u00f3n<\/h3>\n<p>Sphinx necesita configurar primero dos cosas importantes<\/p>\n<p>&#8211; Una fuente\u00a0 :\u00a0 de donde saco los textos<br \/>\n&#8211; Un indice:\u00a0 Donde guardo los indices de esa fuente y lo que voy a usar para buscar.<\/p>\n<p>En el archivo de configuraci\u00f3n se puede cambiar<\/p>\n<p>$&gt; vim \/etc\/sphinxsearch\/sphinx.conf<\/p>\n<h4>2.1\u00a0 La fuente de datos\u00a0 ( De donde sale los textos)<\/h4>\n<p>Se puede configurar una (o varias) fuente de MySQL &#8211; MariaDB, PgSQL o\u00a0 ODBC<\/p>\n<p>Vamos a usar el origen de datos usaremos el que viene por defecto \u00absrc1\u00bb y lo primero a configurar es el acceso a la BD<\/p>\n<p>type\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = MySQL &#8211; MariaDB<br \/>\nsql_host\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = localhost<br \/>\nsql_user\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = test<br \/>\nsql_pass\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = dkjklda\u00f1kfa<br \/>\nsql_db\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = test<br \/>\nsql_port\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = 3306\u00a0 # optional, default is 3306<\/p>\n<p>Luego viene la forma en que se obtienen los datos y como se van a mapear en la base de datos propia de sphinx. Aqui es donde especifica los campos que desea que sean indexados y cuales son referencias.<\/p>\n<p>sql_query\u00a0\u00a0\u00a0 = \\<br \/>\nSELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content \\<br \/>\nFROM documents<\/p>\n<p>A continuacion se define quien es ID de para bd dentro de sphinx\u00a0 \u00a0(Por defecto se considera siempre la primera columna como ID)<\/p>\n<p>sql_attr_uint\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0 = group_id<br \/>\nsql_attr_timestamp\u00a0\u00a0\u00a0\u00a0\u00a0 = date_added<\/p>\n<p>El otro campo que hace falta es content que por defecto ser\u00e1 el campo de indexacion.<\/p>\n<h4>2.2\u00a0 El Indice\u00a0 (Donde guarda la informacion obtenida de la fuente para la b\u00fasqueda)<\/h4>\n<p>Creamos la\u00a0\u00a0 estructura de\u00a0 indexaci\u00f3n<\/p>\n<p>index test1<br \/>\n{<br \/>\nsource\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = src1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Origen de datos (<br \/>\npath\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = \/var\/lib\/sphinx\/test1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 #<span class=\"short_text\">La ruta a la ubicaci\u00f3n donde se almacena el \u00edndice<br \/>\n}<\/span><\/p>\n<p>index testrt<br \/>\n{<br \/>\ntype\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = rt<br \/>\nrt_mem_limit\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = 128M<\/p>\n<p>path\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = \/var\/lib\/sphinx\/testrt<\/p>\n<p>rt_field\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = title<br \/>\nrt_field\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = content<br \/>\nrt_attr_uint\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = gid<br \/>\n}<\/p>\n<p>Este ultimo, no es necesario, pero es un ejemplo de un inidice RT (realtime) que usa un ramdisk para esto<\/p>\n<p>Ya con estos cambios\u00a0 tiene listo su Sphix Search para realizar indexaci\u00f3n.<\/p>\n<h2>Operacion<\/h2>\n<h3>1. Indexaci\u00f3n<\/h3>\n<p>La indexaci\u00f3n es el proceso en el que se lee una funte y se procesa en indices para una posterior busqueda<\/p>\n<p>El archivo de configuraci\u00f3n contiene unos parametros para el proceso de indexaci\u00f3n:<\/p>\n<p>indexer<br \/>\n{<br \/>\nmem_limit\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = 128M<br \/>\n}<\/p>\n<p>Ahora ejecute la indexaci\u00f3n a mano<\/p>\n<p>$&gt;\u00a0 indexer -c \/etc\/sphinxsearch\/sphinx.conf &#8211;all &#8211;rotate<br \/>\nSphinx 2.2.11-id64-release (95ae9a6)<br \/>\nCopyright (c) 2001-2016, Andrew Aksyonoff<br \/>\nCopyright (c) 2008-2016, Sphinx Technologies Inc (http:\/\/sphinxsearch.com)<\/p>\n<p>using config file &#8216;\/etc\/sphinxsearch\/sphinx.conf&#8217;&#8230;<br \/>\nindexing index &#8216;test1&#8217;&#8230;<br \/>\ncollected 73843 docs, 178.1 MB<br \/>\nsorted 17.8 Mhits, 100.0% done<br \/>\ntotal 73843 docs, 178102312 bytes<br \/>\ntotal 29.630 sec, 6010727 bytes\/sec, 2492.10 docs\/sec<br \/>\nindexing index &#8216;orfeo_index_stemmed&#8217;&#8230;<br \/>\ncollected 73843 docs, 178.1 MB<br \/>\nsorted 17.8 Mhits, 100.0% done<br \/>\ntotal 73843 docs, 178102312 bytes<br \/>\ntotal 49.370 sec, 3607481 bytes\/sec, 1495.69 docs\/sec<br \/>\nskipping non-plain index &#8216;test_rt&#8217;&#8230;<br \/>\ntotal 149069 reads, 0.750 sec, 3.6 kb\/call avg, 0.0 msec\/call avg<br \/>\ntotal 3129 writes, 6.732 sec, 338.3 kb\/call avg, 2.1 msec\/call avg<br \/>\nWARNING: failed to open pid_file &#8216;\/var\/run\/sphinxsearch\/searchd.pid&#8217;.<br \/>\nWARNING: indices NOT rotated.<\/p>\n<h3>2. Busqueda<\/h3>\n<p>La funcion de busqueda se hace por medio de un servicio (demonio) corriendo llamado searchd. El archivo de configuracion tambien tiene aparte<\/p>\n<p>searchd<br \/>\n{<br \/>\nlisten \u00a0 \u00a0 \u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = 9312\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 #\u00a0Escucha SphinxAPI<br \/>\nlisten\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u00a0 \u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = 9306:mysql41\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Escucha SphinxSQL con cliente MySQL &#8211; MariaDB<br \/>\nlog\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u00a0 \u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0 = \/var\/log\/sphinx\/searchd.log\u00a0\u00a0\u00a0\u00a0\u00a0 # Bitacoras<br \/>\nquery_log\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = \/var\/log\/sphinx\/query.log<br \/>\nread_timeout\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = 5<br \/>\nmax_children\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = 30<br \/>\npid_file\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u00a0 \u00a0 \u00a0\u00a0 = \/var\/run\/sphinx\/searchd.pid<br \/>\nseamless_rotate\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = 1<br \/>\npreopen_indexes\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = 1<br \/>\nunlink_old\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = 1<br \/>\nworkers\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = threads\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # for RT to work<br \/>\nbinlog_path\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u00a0\u00a0 = \/var\/lib\/sphinx\/<br \/>\n}<\/p>\n<p>Y pues debe estar corriendo ..<\/p>\n<p>$&gt;\u00a0 systemctl status searchd<\/p>\n<p>Puede verificar que exista la tabla de indices.<\/p>\n<p>$&gt; MySQL &#8211; MariaDB -h0 -P9306<br \/>\n$MySQL &#8211; MariaDB&gt; show tables;<\/p>\n<table border=\"1\" width=\"200\" cellspacing=\"1\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<pre>Index<\/pre>\n<\/td>\n<td>\n<pre>Type<\/pre>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<pre>test\r\ntestrt<\/pre>\n<\/td>\n<td>\n<pre>local\r\nrt<\/pre>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>4 rows in set (0.00 sec)<\/p>\n<p>$MySQL &#8211; MariaDB&gt; select count (*) from orfeo_index<\/p>\n<p>Ya esta indexada la informaci\u00f3n, puede hacer pruebas con un archivo de ejemplo, en php<\/p>\n<pre> &lt;?php\r\n    include('sphinxapi.php');\r\n\r\n    $cl = new SphinxClient();\r\n\u00a0\u00a0\u00a0 $cl-&gt;SetServer( \"localhost\", 9312 );\r\n\u00a0\u00a0\u00a0 $cl-&gt;SetMatchMode( SPH_MATCH_ANY );\r\n\r\n\u00a0\u00a0\u00a0 \/\/ el primer par\u00e1metro es la query, es lo que queremos buscar: cumplea\u00f1os\r\n\u00a0\u00a0\u00a0 \/\/ el segundo par\u00e1metro es el index que vamos a usar para buscarlo\r\n\r\n\u00a0\u00a0\u00a0 $result = $cl-&gt;Query( 'reina', 'orfeo_index' ); \/\/Aqui realizamos el query de busqueda con los parametros a buscar y el index donde encuentra la informaci\u00f3n\r\n\r\n\u00a0\u00a0\u00a0 if ( $result === false ) {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 echo \"fallo en Query: \" . $cl-&gt;GetLastError() . \".n\";\r\n\u00a0\u00a0\u00a0 }\r\n\u00a0\u00a0\u00a0 else {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 if ( $cl-&gt;GetLastWarning() ) {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 echo \"WARNING: \" . $cl-&gt;GetLastWarning() . \"                       ;\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 }\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 if ( ! empty($result[\"matches\"]) ) {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 foreach ( $result[\"matches\"] as $doc =&gt; $docinfo ) {\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 echo \"$docn\";\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 }\r\n\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 echo \"&lt;pre&gt;\";\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 print_r( $result );\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 echo \"&lt;pre\/&gt;\";\r\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 }\r\n\u00a0\u00a0\u00a0 }\r\n\r\n\u00a0\u00a0\u00a0 exit;\r\n?&gt;                               \r\n<\/pre>\n<h3>3. Indexaci\u00f3n automatica<\/h3>\n<p>Para la indexaci\u00f3n automatica se debera crear una tarea en el cron del sistema, este cron lo ajustaremos a 10 minutos.<\/p>\n<p>*\/10 * * * * \/usr\/bin\/indexer &#8211;rotate &#8211;config \/etc\/sphinxsearch\/sphinx.conf &#8211;all<\/p>\n<p>Aqui toca evaluar cuantos documentos tiene y que estrategia tiene para mantener el indice.<\/p>\n<p>&nbsp;<\/p>\n<h2>Trucos<\/h2>\n<p>1: Puede utilizar\u00a0 \u00bb \\ \u00bb para realizar saltos de linea en \u00bb sql_query \u00ab.<br \/>\n2: Sphinx Search se autolimita a mostrar solo 20 resultados por query, en\u00a0 sql_query al finalizar el archivo puede agregar \u00bb limit 0, 1000000 option max_matches=1000000\u00a0 \u00ab, con esta instrucci\u00f3n le trae todos los resultados.<\/p>\n<h2>Problemas<\/h2>\n<p>&nbsp;<\/p>\n<p>&#8211;<\/p>\n<p>Referencias<\/p>\n<p>&#8211; Una presentacion bonita\u00a0 http:\/\/astellar.com\/downloads\/2011-Vladimir-Fedorkov-nyphp2011-Full-Text-Search-with-Sphinx-and-PHP.pdf<\/p>\n<p>http:\/\/sphinxsearch.com\/wiki\/doku.php?id=sphinx_articles<br \/>\nhttp:\/\/blog.mageworx.com\/2016\/05\/sphinx-the-beginners-guide\/<br \/>\nhttp:\/\/nyphp.org\/resources\/full-text-search-sphinx-php.pdf<br \/>\nhttp:\/\/sphinxsearch.com\/wiki\/doku.php?id=reference_examples<br \/>\nhttp:\/\/manpages.ubuntu.com\/manpages\/xenial\/man1\/indexer.1.html<br \/>\nhttp:\/\/www.devlifeline.com\/2013\/08\/multiple-sphinx-instances.html<\/p>\n<p>FIN<\/p>\n<p>&nbsp;<\/p>\n<p>NOTA<\/p>\n<p>min_word_len\u00a0\u00a0\u00a0\u00a0\u00a0 = 3\u00a0\u00a0\u00a0 # El n\u00famero m\u00ednimo de caracteres necesario para iniciar la b\u00fasqueda<br \/>\nmin_prefix_len\u00a0\u00a0\u00a0 = 0\u00a0\u00a0\u00a0 # Si 0 &#8211; la configuraci\u00f3n est\u00e1 desactivada,&gt; 0 &#8211; el n\u00famero m\u00ednimo de caracteres al principio de una consulta de b\u00fasqueda que es necesario para iniciar la b\u00fasqueda<br \/>\nmin_infix_len\u00a0\u00a0\u00a0\u00a0 = 3\u00a0\u00a0\u00a0 # Si 0 &#8211; la configuraci\u00f3n est\u00e1 desactivada,&gt; 0 &#8211; el n\u00famero m\u00ednimo de caracteres de toda la palabra, necesario para iniciar la b\u00fasqueda<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Descripci\u00f3n Sphinx Search es un motor de indexaci\u00f3n de texto ( y xml) que nos permite hacer b\u00fasqueda de los contenidos de los documentos. Prerequistos En principio un linux (o Windows) y una fuente de [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","template":"","knowledgebase_cat":[36],"class_list":["post-2652","knowledgebase","type-knowledgebase","status-publish","hentry","knowledgebase_cat-guias-instalacion-orfeong"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Servicio b\u00fasqueda Sphinx Search - Orfeo SGDEA - Gesti\u00f3n Documental<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Servicio b\u00fasqueda Sphinx Search - Orfeo SGDEA - Gesti\u00f3n Documental\" \/>\n<meta property=\"og:description\" content=\"Descripci\u00f3n Sphinx Search es un motor de indexaci\u00f3n de texto ( y xml) que nos permite hacer b\u00fasqueda de los contenidos de los documentos. Prerequistos En principio un linux (o Windows) y una fuente de [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/\" \/>\n<meta property=\"og:site_name\" content=\"Orfeo SGDEA - Gesti\u00f3n Documental\" \/>\n<meta property=\"article:modified_time\" content=\"2023-08-30T13:29:56+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data1\" content=\"5 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/\",\"url\":\"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/\",\"name\":\"Servicio b\u00fasqueda Sphinx Search - Orfeo SGDEA - Gesti\u00f3n Documental\",\"isPartOf\":{\"@id\":\"https:\/\/orfeolibre.org\/inicio\/#website\"},\"datePublished\":\"2023-02-01T14:56:20+00:00\",\"dateModified\":\"2023-08-30T13:29:56+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/orfeolibre.org\/inicio\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Servicio b\u00fasqueda Sphinx Search\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/orfeolibre.org\/inicio\/#website\",\"url\":\"https:\/\/orfeolibre.org\/inicio\/\",\"name\":\"Orfeo SGDEA - Gesti\u00f3n Documental\",\"description\":\"Sistema de Gesti\u00f3n Documental de Archivo Electr\u00f3nico\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/orfeolibre.org\/inicio\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Servicio b\u00fasqueda Sphinx Search - Orfeo SGDEA - Gesti\u00f3n Documental","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/","og_locale":"es_ES","og_type":"article","og_title":"Servicio b\u00fasqueda Sphinx Search - Orfeo SGDEA - Gesti\u00f3n Documental","og_description":"Descripci\u00f3n Sphinx Search es un motor de indexaci\u00f3n de texto ( y xml) que nos permite hacer b\u00fasqueda de los contenidos de los documentos. Prerequistos En principio un linux (o Windows) y una fuente de [&hellip;]","og_url":"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/","og_site_name":"Orfeo SGDEA - Gesti\u00f3n Documental","article_modified_time":"2023-08-30T13:29:56+00:00","twitter_card":"summary_large_image","twitter_misc":{"Tiempo de lectura":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/","url":"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/","name":"Servicio b\u00fasqueda Sphinx Search - Orfeo SGDEA - Gesti\u00f3n Documental","isPartOf":{"@id":"https:\/\/orfeolibre.org\/inicio\/#website"},"datePublished":"2023-02-01T14:56:20+00:00","dateModified":"2023-08-30T13:29:56+00:00","breadcrumb":{"@id":"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/orfeolibre.org\/inicio\/documentacion-orfeo\/documentacion-orfeong\/guias-instalacion-orfeong\/instalacion-de-servicio-busqueda-de-texto-completo-sphinx\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/orfeolibre.org\/inicio\/"},{"@type":"ListItem","position":2,"name":"Servicio b\u00fasqueda Sphinx Search"}]},{"@type":"WebSite","@id":"https:\/\/orfeolibre.org\/inicio\/#website","url":"https:\/\/orfeolibre.org\/inicio\/","name":"Orfeo SGDEA - Gesti\u00f3n Documental","description":"Sistema de Gesti\u00f3n Documental de Archivo Electr\u00f3nico","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/orfeolibre.org\/inicio\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"}]}},"_links":{"self":[{"href":"https:\/\/orfeolibre.org\/inicio\/wp-json\/wp\/v2\/knowledgebase\/2652","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/orfeolibre.org\/inicio\/wp-json\/wp\/v2\/knowledgebase"}],"about":[{"href":"https:\/\/orfeolibre.org\/inicio\/wp-json\/wp\/v2\/types\/knowledgebase"}],"author":[{"embeddable":true,"href":"https:\/\/orfeolibre.org\/inicio\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/orfeolibre.org\/inicio\/wp-json\/wp\/v2\/comments?post=2652"}],"version-history":[{"count":4,"href":"https:\/\/orfeolibre.org\/inicio\/wp-json\/wp\/v2\/knowledgebase\/2652\/revisions"}],"predecessor-version":[{"id":3560,"href":"https:\/\/orfeolibre.org\/inicio\/wp-json\/wp\/v2\/knowledgebase\/2652\/revisions\/3560"}],"wp:attachment":[{"href":"https:\/\/orfeolibre.org\/inicio\/wp-json\/wp\/v2\/media?parent=2652"}],"wp:term":[{"taxonomy":"knowledgebase_cat","embeddable":true,"href":"https:\/\/orfeolibre.org\/inicio\/wp-json\/wp\/v2\/knowledgebase_cat?post=2652"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}