Obliczach poszukiwanie apache solr hosting Drupal

Uwaga: wyjątkowy dzięki Doug Vann za dostarczanie motywację, by w końcu opublikować ten wpis na blogu!

Na początku 2016 roku, gdy Search API i Solr związane moduły dla Drupala 8 było na początku stanu alfa, napisałem posta Skonfiguruj aspektach strony wyszukiwania Apache Solr na Drupal 8 z Search API Solr i aspektach.

Że post był pomocny podczas bolesnych miesięcy podczas wyszukiwania Solr w Drupal 8 było nadal w stanie bardzo szorstki, ale wiele się zmieniło od tamtego czasu, a Solr oparte wyszukiwania w Drupal 8 jest w znacznie bardziej stabilny (i łatwych do skonfigurowania) miejsce dzisiaj, więc pomyślałem, że wreszcie napisać nową wiadomość, aby pokazać, jak łatwo jest zbudować aspektach wyszukiwania Solr w Drupal 8, prawie rok później.

hosting

Zbudować środowisko rozwoju lokalnego z Apache Solr

Te dni zawsze budowania i utrzymywania witryn lokalnie przy użyciu Drupal Drupal VM; robi to pozwala mi skonfigurować środowisko programistyczne dokładnie, jak mi się podoba, i robi rzeczy, jak dodawanie Apache Solr jest trywialne. Więc dla tej instrukcji, zacznę od punktu wyjścia, i pokazać, jak zacząć absolutnie nic i budować aspektach wyszukiwania na nowej Drupal 8 miejscu, przy użyciu Drupal VM oraz plik kompozytor:

Pobierz Drupal VM i postępuj Szybki start. następnie dodaj następującą config.yml wewnątrz folderu Drupal VM aby upewnić zainstalowany Apache Solr:

Zamierzamy wykorzystać integrację Kompozytor Drupal VM do generowania witryny Drupal, który ma Drupal Kompozytor oparte zainstalować w zsynchronizowane ścieżki folderu (domyślnie w podkatalogu drupal w folderze Drupal VM).

Zmienna drupal_composer_dependencies mówi Drupal VM do kompozytora wymagają moduły niezbędne, aby uzyskać Search API Solr i aspektach. Skrypt post_provision_scripts dołączona jest Drupal VM i skonfiguruje wersję zainstalowanego Apache Solr z Drupal VM odpowiednio do zastosowania z modułem Search API Solr.

Skopiuj example.drupal.composer.json do drupal.composer.json. następnie uruchomić Vagrant do budowania środowiska rozwoju lokalnego i pobrać cały kod Drupal wymaganą do uruchomienia wyszukiwania.

Uwaga: Jeśli ustawienie szukać się na istniejącym miejscu lub nie chcą korzystać Drupal VM, należy pobrać i zainstalować API Search, Search API Solr i Facets moduły ręcznie, i upewnij się, że Apache Solr działa i rdzeń wyszukiwania skonfigurowany konfiguracji najnowszej Search API SOLR modułu wersji.

Zainstalować moduły

Jeśli chcesz zainstalować moduły pośrednictwem interfejsu Drupal:

  1. Idź do drupalvm.dev/. a następnie zalogować się jako administrator (domyślna nazwa użytkownika i hasło to admin / admin).
  2. Przejdź do strony Extend (/ admin / moduły) i włączyć "Search API", "Oblicza", "Solr wyszukiwania" i "Solr wyszukiwania domyślne".
Obliczach poszukiwanie apache solr drupal hosting trochę więcej

Jeśli chcesz zainstalować moduły poprzez Drush:

  1. Uruchom drush @ drupalvm.drupalvm.dev pl -y aspekty search_api search_api_so LR search_api_solr_defaults

Należy również odinstalować rdzenia „Szukaj” moduł, jeśli jest zainstalowany, nie jest wymagane dla Search API lub aspektach i będzie przechowywać dodatkowe śmieci w bazie danych witryny, jeśli jest zainstalowany.

Skonfigurować serwer Solr

Odwiedź stronę konfiguracji Search API i edytować domyślne Solr Server, dzięki czemu następujące zmiany:

  • Zmiana 'Solr rdzeń' do collection1 (domyślnie D8).

Uwaga. Najnowsze wersje Drupal VM nie wymagają już ten krok, jak nazwa domyślnego SOLR rdzenia jest skonfigurowany do automatycznego d8 (zobacz ten PR).

W tym momencie na stronie statusu serwera (/ admin / config / szukaj / search-api / server / default_solr_server) powinien pojawić się komunikat „Serwer Solr mógłby zostać osiągnięty” i „można uzyskać dostępu do Solr rdzeń”:

Gdy to nastąpi, należy odinstalować moduł domyślne ustawienia wyszukiwania Solr (drush @ drupalvm.drupalvm.dev PMU -y search_api_solr_defaults); moduł ten nie jest już wymagane po wstępnej instalacji, ponieważ konfiguracja serwera Solr jest obecnie częścią aktywnego sklepu konfiguracji witryny i nie zostaną usunięte.

Skonfigurować indeks Solr

Moduł wyszukiwania Domyślne Solr tworzy indeks zawierający wszystkie domyślne treści publikowanych węzłów na stronie internetowej. W naszym przypadku oznacza to, że wszystkie podstawowe stron i artykułów zostaną uwzględnione.

Nie trzeba nic zmieniać w konfiguracji indeksu, ale jeśli chcesz mieć rozglądamy i zobaczyć, jak to skonfigurować i jakie opcje masz pod względem źródła danych, pola, lub procesory, wizyta / admin / config / szukaj / search-api / index / default_solr_index / edit.

Dodaj domyślną zawartość (jeśli nie masz)

Zakładając, że zbudował tę stronę za pomocą Drupal VM, jest prawdopodobne, że witryna jest jałowy, bez żadnej treści mają być indeksowane. Aby to naprawić, można użyć modułu devel jest poręczny towarzysz, Devel generowania:

  1. Włącz Devel generowania: drush @ drupalvm.drupalvm.dev pl -y devel_generate
  2. Generowanie atrapę treści: drush @ drupalvm.drupalvm.dev generowania zawartości-100
    • Uwaga: W chwili pisania tego tekstu, komenda Drush nie spowodowało treści generowanej. Użyj UI w / admin / config / rozwoju / generowanie / treść jeżeli polecenie Drush nie jest generowanie treści.

    Teraz masz kilka węzłów Można indeksować i szukaj!

    Potwierdź Search indeksowania pracuje

    Najlepiej niech serwery produkcja Solr poczekać kilka minut przed świeżo indeksowane treści są udostępnione do wyszukiwania; Tym sposobem wyszukiwania są nieco bardziej wydajnych jak Solr możesz partii jego operacje aktualizacyjne. Ale dla rozwoju lokalnego miło mieć indeks być na bieżąco, tak szybko jak to możliwe w celach testowych, więc konfiguracja Drupal VM opowiada Solr zaktualizować to indeks wyszukiwania zaraz po Drupal wysyła żadnych treści.

    Tak więc, jeśli treści generowane z Devel wygenerować, a następnie odwiedzić stronę stanu wskaźnik dla indeksu domyślnej wyszukiwarki (/ admin / config / szukaj / search-api / index / default_solr_index), powinieneś zobaczyć całą zawartość na stronie indeksowane:

    Jeśli pracujesz na istniejącej stronie, lub jeśli cała zawartość nie jest jeszcze indeksowane z jakiegoś powodu, można ręcznie indeks cała zawartość klikając na przycisk „indeks teraz” i czeka na operację do wykonania.

    Należy pamiętać, że szybkość indeksowania mogą się różnić w zależności od stopnia złożoności swojej stronie. Jeśli masz stronę z wielu złożonych typów węzłów i setek tysięcy lub milionów węzłów, trzeba użyć bardziej efektywnych metod indeksowania, albo będziesz czekać miesiąc dla wszystkich treści można przeszukiwać!

    Zrób Faceted Solr Szukaj Zobacz

    Moduł wyszukiwania Domyślne Solr tworzy stronę wyszukiwania przykład Odwiedzin oparte, którą można otworzyć w / solr-SEARCH / treści. już powinno być funkcjonalne, ponieważ treść jest indeksowana w Solr (ją wypróbować!):

    W wielu miejscach, ten rodzaj ogólnego stronie słów kluczowych oparte jest wszystko, co chcesz kiedykolwiek potrzebować. Ale będziemy świerk go trochę i uczynić go bardziej funkcjonalnym zmieniając ścieżkę i dodanie Content Type Facet.

    Po pierwsze, należy zmodyfikować widok odwiedzając / admin / struktura / views / view / solr_search_content:

    1. Zmienić tytuł na „Szukaj” (zamiast „Szukaj Content”).
    2. Zmień ścieżkę do '/ search' (zamiast '/ solr-SEARCH / content').
    3. Kliknij „Zapisz”.

    Po drugie, stworzenie typu zawartości FACET odwiedzając / admin / config / Szukaj / aspekty:

    1. Kliknij przycisk „Dodaj aspekt”.
    2. Wybierz „Wyświetl Solr przeszukiwania zawartości, wyświetlenie strony” Facet źródło (jest to widok po prostu edycji).
    3. Wybierz 'Content Type (typ)' za rolę w FACET.
    4. Nazwij aspekt „szukaj Facet - Content Type” (to pomoże z umieszczania bloku później).
    5. Kliknij „Zapisz”.
    6. Na stronie edycji Facet:
    1. Zaznacz pole do „Pokaż ilość wyników”.
    2. Zaznacz pole wyboru „Lista element etykieta” (będzie to zrobić show aspekt Strona Podstawowe 'zamiast „page'-etykiecie zamiast nazwy komputera dla każdej pozycji).
    3. Kliknij „Zapisz”.

    Facet jest gotowy do umieszczenia w temacie więc pojawi się, gdy widok Search jest renderowane. Odwiedź stronę konfiguracji układ Block (/ admin / struktura / blok), a następnie kliknij „blok Place” w regionie, w którym ma się pojawić aspekt. W moim tematem, wybrałem „Sidebar” pierwszy obszar.

    Znajdź 'szukaj Facet - Content Type' (The Facet po prostu stworzony) i kliknij 'blok Place'. Następnie ustawić tytuł bloku na coś „filtrowania według typu” i kliknij „Zapisz blok”. Nie trzeba ustawić konkretne ograniczenia widoczności dla bloku ponieważ Facet jest ustawiony w ogóle nie wyświetlać, jeśli nie znajdują się wyniki wyszukiwania na stronie, która wymaga jego wykazania.

    Kliknij przycisk „Zapisz” bloki na stronie układzie blokowym, a następnie przejść na stronę wyszukiwarki w skali całej witryny / kryteria:

    Jeśli przeprowadzić wyszukiwanie, a następnie zauważysz liczy rezultacie FACET będzie odpowiednio dostosować:

    W tym momencie powinno być w pełni operacyjny nawigacja fasetowa Solr na swojej stronie Drupal 8. Stąd można dostosować stronę wyszukiwarki dalej prace nad wyprowadzania różne wyniki (może zawartość zwiastun zamiast pełnego świadczonych treści?) I dodać więcej aspektów (data, autor, utrzymujące taksonomia, itd.), Aby uczynić pracę wyszukiwarki dokładnie tak, jak chcesz!

    Następne kroki

    Jeśli Twój dostawca hostingu nie stanowią rdzeń wyszukiwania Apache Solr dla witryny, aby wykorzystać, warto rozważyć użycie Hosted Apache Solr gospodarzem Solr wyszukiwania rdzeń Twojej strony; wykorzystuje podobną konfigurację do tego, co jest wykorzystywane w Drupal VM i mogę ręczyć za to, bo uruchomić usługę :)

    Zauważ, że moduły Search API są jeszcze w fazie beta, co z tym blogu; drobne szczegóły mogą powodować różnic screeny i instrukcji powyżej.

    Dzięki za kompleksową instrukcją. Ja pracuję moją drogę przez niego i zdobyć trochę zatrzymany na schemacie. Mam zainstalowany włóczęgę, wirtualne okno i dostał drupal strony i działa z Solr. Ale kiedy patrzę na stronie serwera solr w Drupal, mój schemat jest przykładem-data-driven-schema, a nie drupal-4,5-solr-5.x jak na swojej stronie internetowej. Mam też zawiadomienie na szczycie mojej stronie serwera solr w Drupal mówiąc: „Używasz niezgodnego plik konfiguracyjny schema.xml. Należy postępować zgodnie z instrukcjami zawartymi w pliku INSTALL.txt konfigurowania Solr.” Ale nie widzę żadnego odniesienia do schematu w install.txt wzmianka. Próbowałem zobaczyć, gdzie schemat jest wymieniony w wędrujących plików konfiguracyjnych, ale nic nie widzę. Można kierować do mnie, gdzie mam iść, aby zmienić.

    Używam tego na maszynie Windows 10. Próbowałem z Solr 5.5, jak w pliku Vagrant, a także próbował Solr 6.3

    Dzięki za wszelką pomoc z góry.
    gh

    Na jej uzupełnieniem I rozwiązać powyższy problem, usuwając wszystkie pliki w katalogu / var / solr / data / collection1 / conf / i skopiowane wszystkie pliki z katalogu / var / www / drupalvm / drupal / web / moduły / contrib / search_api_solr / solr -conf / 6.x /, aby przed wspomniano katalog. To jest nawiązywał w pliku w modułach / contrib / search_api_solr / install.txt w obszarze, w którym mówi się o „Przed rozpoczęciem Solr”. Zrobiłem to po uruchomieniu Solr i tylko odświeżony.

    Obejrzyj ten film!

    Powiązane artykuły

    Wyszukiwarka niestandardowy blok hosting DrupalWysłany przez Susan Rosie W dniu 26 maja 2015 2015-05-26T14: 28: 40 + 00: 00 Drupal dzieli stronę internetową w kilku regionach, w tym pasku bocznym stopki i nagłówka, która posiada bloki na wyświetlanie różnych ...
    Zobacz wyszukiwania moduł Drupal hostingWitam, i zapraszam do DrupalModules.com, ocenę i przegląd serwis społeczności zasilany poświęcone pomaga znaleźć najlepsze modułów Drupal dla projektu! Potrzebujesz pomocy w znalezieniu odpowiedniego Drupal ...
    Pole narzędzia hosting DrupalWprowadzenie Implementacja skutecznego wyszukiwania jest jednym z najtrudniejszych zadań w rozwoju, ale jest to również klucz do sukcesu wielu stron internetowych i aplikacji. Szybkie wyszukiwanie i ...
    Drupal hosting z SSLHTTPS to protokół, który szyfruje żądań HTTP i ich reakcje. Gwarantuje to, że jeśli ktoś był w stanie zagrozić sieci między komputerem a serwerem którą wnioskujesz ...
    Tim millwood hosting DrupalJego krzywa uczenia się jest znany, ale Tim Millwood twierdzi, że Drupal nie jest tak przerażający, i pokazuje, jak można go używać do budowania wiedzy pokładzie zadanie potrzebne. Podstawowe tworzenie stron internetowych oraz ...