🔍 VN Suche / VN Search

Vollständige Anleitung in Deutsch und Englisch · Complete guide in German and English

VN Suche / VN Search

🇩🇪 Deutsche Anleitung

English version ↓

1Erste Einrichtung

1
Extension VN Suche in Mobirise importieren.
2
Den Such-Block auf die gewünschte Seite ziehen.
3
In den Projekteinstellungen unter „VN Blöcke“ „VN Suche aktiviert“ einschalten.
4
Admin-Benutzername und Admin-Passwort festlegen.
5
Projekt vollständig publizieren.
WichtigIst „VN Suche aktiviert“ beim Publizieren ausgeschaltet, werden die Dateien der Extension nicht mit übertragen. Für Installation und Aktualisierung muss der Schalter eingeschaltet sein.

2Der Such-Block auf der Seite

EinstellungBedeutung
Sprache der TexteWahl zwischen Deutsch und English. Platzhalter, Statusmeldungen, Trefferhinweise sowie die Bezeichnungen Seite/Datei bzw. Page/File werden automatisch passend ausgegeben.
SuchbereichAlle Treffer, nur Seiten oder nur PDFs
Max. TrefferanzahlMaximal angezeigte Ergebnisse (3–400)
Länge des VorschautextsAnzahl der Wörter um die Fundstelle herum (6–64)
PlatzhaltertextText im leeren Suchfeld. Bleibt das Feld leer, wird automatisch der zur gewählten Sprache passende Text verwendet (Suchen… bzw. Search…).
Sticky SucheSuchfeld bleibt beim Scrollen oben sichtbar

Sprache der Suchausgabe

Über „Sprache der Texte“ kann die sichtbare Ausgabe des Such-Blocks auf Deutsch oder Englisch umgestellt werden. Die interne Suche und die Datenbank bleiben davon unberührt; geändert werden nur die Texte, die der Besucher sieht.

Weiterleitung, wenn nichts gefunden wird

Für eine erfolglose Suche kann optional eine Zielseite festgelegt werden. Dafür stehen drei Betriebsarten zur Verfügung:

EinstellungBedeutung
AusEs wird nur „Keine Treffer gefunden.“ bzw. „No results found.“ angezeigt.
Nur wenn Enter gedrückt wirdDie Weiterleitung erfolgt nur dann, wenn die Suche ausdrücklich mit der Enter-Taste gestartet wurde und keine Treffer gefunden wurden.
Automatisch beim TippenWird nach der automatischen Suche beim Tippen kein Treffer gefunden, beginnt die Weiterleitung ohne zusätzlichen Tastendruck.
Ziel-SeiteRelative oder absolute Zieladresse, z. B. keine-treffer.html.
HinweistextOptionaler eigener Text vor der Weiterleitung. Bleibt das Feld leer, wird automatisch ein deutscher bzw. englischer Hinweis verwendet.
Wartezeit0–10 Sekunden. Bei 0 erfolgt die Weiterleitung sofort.
Suchbegriff als ?q=… anhängenOptional wird der Suchbegriff an die Zielseite übergeben, z. B. keine-treffer.html?q=english.
Schutz vor EndlosschleifenZeigt die eingestellte Zieladresse auf dieselbe Seite, auf der sich der Such-Block befindet, wird nicht weitergeleitet.

Bei geeigneten Seitentreffern kann zusätzlich ein Textfragment-Link (#:~:text=…) direkt zur Fundstelle führen.

3Admin-Bereich – Zugang

Typischer Pfad:

https://deine-domain.de/<website-ordner>/assets/vn-search/admin/login.php
  • Übersicht – Status und Kurzstatistik
  • PDF-Dateien – Upload, Scan, Ausschlüsse und Cronjob
  • Seiten – Übersicht erfasster HTML-/PHP-Seiten

4PDFs manuell hochladen

PDF-Dateien können im Admin-Bereich direkt hochgeladen werden. Sie werden serverseitig gespeichert und nach Text durchsucht. Falls ein Dokument keinen eingebetteten Text enthält, kann – sofern auf dem Server verfügbar – OCR verwendet werden.

5Ordner-Scan

Der Scanner kann den kompletten eingestellten Scan-Wurzelordner oder gezielt einen Unterordner rekursiv durchsuchen.

FeldBedeutung
OrdnerLeer = kompletter eingestellter Scan-Wurzelordner. Sonst z. B. dateien für einen Unterordner.
Standard-Dateitypenpdf, html und htm
Zusätzliche DateitypenKommagetrennt, z. B. txt, mbrext, zip, docx. Diese werden über ihren Dateinamen auffindbar, nicht über ihren Inhalt.
PHP-Seiten mit erfassenOptional. PHP-Quellcode wird nicht gelesen; die Seite wird per HTTP aufgerufen und die erzeugte Ausgabe indexiert.
Automatischer AbgleichNeue Dateien werden ergänzt, geänderte Dateien gezielt neu indexiert, unveränderte Einträge behalten ihren Status und gelöschte Dateien verschwinden beim nächsten Scan aus dem Suchindex.

6Ordner vom Scan ausschließen

Ein einfacher Ordnername wie assets gilt in jeder Verzeichnistiefe. Der eigene Ordner assets/vn-search sowie technische bzw. versteckte Verzeichnisse wie .git, node_modules und .well-known werden automatisch übersprungen.

7Geschützte Dateimuster

config.php, *.env, *.key, db.php, *Mobirise*

Platzhalter (*) sind erlaubt. Geprüft werden Dateiname, relativer Pfad und einzelne Pfadbestandteile. Bereits erfasste Treffer können nachträglich gegen die gespeicherten Muster bereinigt werden.

8Scan-Wurzelordner (Shared Hosting)

Standardmäßig startet der Scan an der Website-Wurzel. Bei mehreren Projekten auf einem Hosting-Account kann – sofern vom Hoster erlaubt – ein übergeordneter Scan-Wurzelordner wie .. oder ../.. eingetragen werden.

open_basedirDer Hoster kann den für PHP lesbaren Bereich einschränken. Ein Scan außerhalb dieses Bereichs ist dann nicht möglich.

9Passwortgeschützte Ordner (.htaccess)

Ordner mit typischen Zugriffsschutz-Direktiven wie AuthType oder Require valid-user werden beim Scan übersprungen. Die öffentliche Suche prüft Trefferpfade zusätzlich nochmals auf entsprechenden .htaccess-Schutz.

10Seiten-Verwaltung

Unter „Seiten“ werden erfasste HTML- und – sofern aktiviert – PHP-Seiten mit ihrem Status angezeigt. HTML-Dateien werden direkt ausgelesen; PHP-Seiten werden über ihre erzeugte HTTP-Ausgabe verarbeitet.

11Bereinigen & Löschen

  • Einzelne Einträge: über den Löschen-Button der jeweiligen Tabellenzeile
  • Kompletter Reset: Bereiche können vollständig geleert und anschließend neu eingelesen werden

Ein kompletter Neuaufbau ist normalerweise nicht erforderlich, kann aber bei Tests oder nach größeren Änderungen sinnvoll sein.

12Automatischer Scan per Cronjob

Der Cronjob erkennt neue Ordner und Dateien ohne manuellen Klick auf „Einlesen“.

1
Im Admin-Bereich ein Sicherheits-Token erzeugen.
2
Die angezeigte Cronjob-URL kopieren.
3
Beim Hoster einen regelmäßigen URL-Aufruf einrichten, z. B. einmal täglich.

Der Cronjob durchsucht immer den kompletten eingestellten Scan-Wurzelordner und übernimmt die gespeicherten Optionen für PHP-Seiten und zusätzliche Dateiendungen. Bereits fertig indexierte, unveränderte Einträge werden nicht bei jedem Lauf erneut verarbeitet.

Token-SicherheitDas Token ist wie ein Passwort. Bei Verdacht auf Missbrauch ein neues Token erzeugen und die Cronjob-URL beim Hoster aktualisieren.

13Sicherheitshinweise

  • PHP-Quellcode wird nicht direkt gelesen oder durchsucht.
  • Sensible Dateiendungen wie .env, .key, .sql, .htpasswd und weitere sind fest blockiert.
  • Passwortgeschützte Ordner werden automatisch übersprungen.
  • Der Datenbankordner assets/vn-search/data/ wird per eigener .htaccess geschützt.
  • Suchergebnis-Ausschnitte werden HTML-sicher ausgegeben.

14Häufige Fragen & Problemlösung

Neue Dateien erscheinen nicht

Prüfen, ob die gewünschte Dateiendung standardmäßig unterstützt wird oder unter „Zusätzliche Dateitypen“ gespeichert ist. Für PHP-Dateien muss die PHP-Option aktiviert sein.

PDF-Text ist nur teilweise oder in Einzelbuchstaben durchsuchbar

Bestimmte PDF-Parser können Null-Zeichen-Entities in den extrahierten Text einfügen. Die aktuelle Version bereinigt diese Zeichen beim Indexieren und kann ältere betroffene PDF-Einträge einmalig reparieren.

Cronjob-Adresse liefert 404

Sicherstellen, dass die aktuelle Extension vollständig publiziert wurde und die URL exakt dem installierten Projektpfad entspricht.

Scan-Wurzelordner funktioniert nicht

Eine open_basedir-Beschränkung des Hosters kann den Zugriff auf übergeordnete Verzeichnisse verhindern.

🇬🇧 English Guide

Deutsche Version ↑

1Initial setup

1
Import the VN Search extension into Mobirise.
2
Add the search block to the desired page.
3
In Project Settings under “VN Blocks”, enable “VN Search enabled”.
4
Set the admin username and admin password.
5
Publish the complete project.
ImportantIf VN Search is disabled while publishing, the extension files are not transferred. Keep it enabled for installation and updates.

2The search block

SettingMeaning
Text languageChoose between Deutsch and English. Placeholders, status messages, result hints and the labels Seite/Datei or Page/File are displayed automatically in the selected language.
Search scopeAll results, pages only, or PDFs only
Maximum resultsMaximum number of displayed results (3–400)
Snippet lengthNumber of words shown around the match (6–64)
PlaceholderText shown in an empty search field. If left empty, the block automatically uses the text for the selected language (Suchen… or Search…).
Sticky searchKeeps the search field visible while scrolling

Search-result language

The visible texts of the search block can be switched between German and English using “Text language”. This does not affect the internal search logic or database; only visitor-facing labels and messages are translated.

Redirect when no results are found

An optional target page can be configured for unsuccessful searches. Three modes are available:

SettingMeaning
OffOnly “Keine Treffer gefunden.” or “No results found.” is displayed.
Only when Enter is pressedRedirect only if the search was explicitly started with the Enter key and returned no results.
Automatically while typingIf the automatic search while typing returns no results, the redirect starts without an additional key press.
Target pageRelative or absolute target URL, for example no-results.html.
Notice textOptional custom message shown before the redirect. If left empty, a language-specific default message is used.
Delay0–10 seconds. A value of 0 redirects immediately.
Append search term as ?q=…Optionally pass the search term to the target page, for example no-results.html?q=english.
Loop protectionIf the configured target URL points to the same page that contains the search block, no redirect is performed.

Where appropriate, page results can use a text-fragment URL (#:~:text=…) to jump directly to the matching text.

3Admin area – access

Typical path:

https://your-domain.example/<website-folder>/assets/vn-search/admin/login.php
  • Overview – status and summary
  • PDF files – uploads, scanning, exclusions and cron setup
  • Pages – indexed HTML/PHP pages

4Uploading PDFs manually

PDFs can be uploaded directly in the admin area. They are stored on the server and indexed for text search. If a PDF has no embedded text, OCR can optionally be used when the required server-side tools are available.

5Folder scan

The scanner can recursively scan the complete configured scan root or a selected subfolder.

FieldMeaning
FolderEmpty = scan the complete configured scan root. Otherwise enter a subfolder such as files.
Default file typespdf, html and htm
Additional file typesComma-separated, e.g. txt, mbrext, zip, docx. These are searchable by file name, not file content.
Include PHP pagesOptional. PHP source code is never read; the page is requested over HTTP and the generated output is indexed.
Automatic reconciliationNew files are added, changed files are selectively re-indexed, unchanged records keep their status, and deleted files disappear from the index during the next scan.

6Excluding folders

A simple folder name such as assets applies at any directory depth. The extension's own assets/vn-search folder and technical or hidden folders such as .git, node_modules and .well-known are skipped automatically.

7Protected file patterns

config.php, *.env, *.key, db.php, *Mobirise*

Wildcards (*) are supported. VN Search checks file names, relative paths and individual path components. Existing index entries can also be cleaned against the saved patterns.

8Scan root on shared hosting

By default, scanning starts at the website root. If several projects share one hosting account, a parent scan root such as .. or ../.. can be configured, provided the hosting environment allows access.

open_basedirSome hosting providers restrict which directories PHP may read. Scanning outside that allowed area will then fail.

9Password-protected folders (.htaccess)

Folders containing access-control directives such as AuthType or Require valid-user are skipped during scanning. Public search results are also checked again for corresponding .htaccess protection.

10Page management

The “Pages” section lists indexed HTML pages and, when enabled, PHP pages together with their status. HTML files are read directly; PHP pages are processed from their generated HTTP output.

11Cleaning and deleting

  • Single entries: remove them using the delete button in the corresponding row
  • Full reset: index areas can be cleared completely and scanned again

A full rebuild is normally unnecessary, but can be useful during testing or after major changes.

12Automatic scanning with a cron job

The cron job detects new folders and files without manually clicking the scan button.

1
Create a security token in the admin area.
2
Copy the generated cron URL.
3
Configure your hosting provider to call that URL regularly, for example once per day.

The cron job deliberately scans the complete configured scan root and uses the saved options for PHP pages and additional file extensions. Already indexed, unchanged records are not processed again on every run.

Token securityTreat the token like a password. If it may have been exposed, generate a new token and update the cron URL at your hosting provider.

13Security notes

  • PHP source code is never read or searched directly.
  • Sensitive file extensions such as .env, .key, .sql, .htpasswd and others are permanently blocked.
  • Password-protected folders are skipped automatically.
  • The database folder assets/vn-search/data/ is protected by its own .htaccess.
  • Search-result snippets are safely escaped before output.

14FAQ and troubleshooting

New files do not appear

Check whether the extension is supported by default or saved under “Additional file types”. PHP files require the PHP option to be enabled.

PDF text is searchable only partially or as single letters

Some PDF parsers may insert null-character entities into extracted text. Current versions clean these characters while indexing and can repair older affected PDF index entries once.

The cron URL returns 404

Make sure the current extension has been fully published and that the URL exactly matches the installed project path.

The configured scan root does not work

An open_basedir restriction imposed by the hosting provider may prevent access to parent directories.