Solr TYPO3 · 3 min read · Dec 27, 2025

Usando Solr Con TYPO3 En Debian Wheezy

Usando Solr Con TYPO3 En Debian Wheezy

Versión 1.0
Autor: Falko Timme
Sígueme en Twitter

La extensión de búsqueda predeterminada de TYPO3 llamada “Búsqueda Indexada” es adecuada para sitios web pequeños, pero si tu sitio web es más grande (> 500 páginas), se vuelve muy lento. Afortunadamente, puedes reemplazarla con una extensión de búsqueda que utiliza el ultra-rápido servidor de búsqueda Apache Solr. Este tutorial explica cómo usar Apache Solr con TYPO3 en Debian Wheezy.

¡No garantizo que esto funcione para ti!

1 Nota Preliminar

En este tutorial estoy usando dos servidores:

  • server1.example.com (IP: 192.168.0.100): servidor web donde está instalado el paquete de introducción TYPO3 4.7 (en el vhost www.example.com).
  • server2.example.com (IP: 192.168.0.101): servidor separado donde instalaré Apache Solr.

Por supuesto, es posible instalar Solr en el mismo sistema que el servidor web; sin embargo, me gustaría separar ambos servicios para que no afecten el rendimiento del otro.

2 Instalando Solr

server2.example.com:

Primero instala Java:

apt-get install openjdk-6-jdk openjdk-6-jre unzip
update-alternatives --config java  
update-alternatives --config javac

El proyecto TYPO3 proporciona un script de instalación de Solr que descargamos de la siguiente manera:

wget http://forge.typo3.org/projects/extension-solr/repository/revisions/master/raw/resources/shell/install-solr.sh  
chmod 755 install-solr.sh

A continuación, verifica cuál es la versión actual de Apache Tomcat 6 visitando http://tomcat.apache.org/download-60.cgi. En el momento de escribir esto, era 6.0.37. Ahora abre install-solr.sh…

vi install-solr.sh

… y asegúrate de que la variable TOMCAT_VER contenga el número de versión correcto; si es necesario, cámbialo:

| [...] TOMCAT_VER=6.0.37 [...] |

Ahora instalamos Solr. Por defecto (si no proporcionas ningún idioma como parámetros), Solr se instala con soporte solo para el idioma inglés; si necesitas soporte para más idiomas, simplemente añádelos al comando, por ejemplo, así:

./install-solr.sh german english french

Esto instala un servidor Tomcat (donde se ejecuta Solr) y Solr. Por defecto, Tomcat escucha solo en 127.0.0.1; como queremos acceder a Solr desde un host remoto, debemos configurar Tomcat para que escuche en todas las interfaces, por lo tanto, reemplazamos 127.0.0.1 con 0.0.0.0 en /opt/solr-tomcat/tomcat/conf/server.xml:

vi /opt/solr-tomcat/tomcat/conf/server.xml

| [...] [...] |

Reinicia Tomcat:

/opt/solr-tomcat/tomcat/bin/shutdown.sh  
/opt/solr-tomcat/tomcat/bin/startup.sh

A continuación, podemos configurar núcleos en Solr. Por defecto, ya hay un núcleo en inglés configurado; si necesitas más idiomas, puedes agregarlos a /opt/solr-tomcat/solr/solr.xml, por ejemplo, así:

vi /opt/solr-tomcat/solr/solr.xml

| |

Reinicia Solr después:

/opt/solr-tomcat/tomcat/bin/shutdown.sh  
/opt/solr-tomcat/tomcat/bin/startup.sh

Porque no queremos iniciar Tomcat manualmente cada vez que se arranca el servidor, podemos agregar el comando de inicio de Tomcat a /etc/rc.local:

vi /etc/rc.local

| [...] /opt/solr-tomcat/tomcat/bin/startup.sh [...] |

2.1 Agregando Autenticación A Solr

Debido a que Solr está escuchando en todas las interfaces, es una buena idea agregar autenticación. Ahora configuraré el usuario user1 con la contraseña secret para el núcleo en inglés.

Abre /opt/solr-tomcat/tomcat/conf/web.xml…

vi /opt/solr-tomcat/tomcat/conf/web.xml

… y agrega la siguiente sección en algún lugar dentro del contenedor :

| [...] Aplicación Solr autenticada /core_en/* role1 BASIC Protección de Admin y Actualización [...] |

Como ves, esto es válido solo para el núcleo en inglés ( /core_en/*), y he configurado esto para el rol role1, por lo que los usuarios válidos deben pertenecer a ese rol. Para agregar el usuario user1 con su contraseña a ese rol, abre /opt/solr-tomcat/tomcat/conf/tomcat-users.xml…

vi /opt/solr-tomcat/tomcat/conf/tomcat-users.xml

… y agrega la siguiente sección dentro del contenedor :

| [...] [...] |

Reinicia Tomcat después:

/opt/solr-tomcat/tomcat/bin/shutdown.sh  
/opt/solr-tomcat/tomcat/bin/startup.sh

Ahora puedes abrir un navegador y visitar Solr en http://192.168.0.101:8080/solr donde deberías ver todos los núcleos configurados:

Cuando visites el núcleo en inglés (para el cual acabamos de configurar la autenticación), deberías ser solicitado por un nombre de usuario y una contraseña:

Después de una autenticación exitosa, deberías ver la siguiente página, lo que significa que Solr se está ejecutando correctamente:

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.