jsFAQ - FAQ für die eigene Homepage

Installation und Konfiguration von jsFAQ


Hier geht's zur Download-Seite von jsFAQ

1. Allgemeines

1.1. Produktbeschreibung in Kürze

jsFAQ ist eine kleine FAQ-Datenbank für die eigene Homepage. Mit jsFAQ können mehrere Produkte verwaltet werden. Die FAQ-Einträge können in mehrere Bereiche unterteilt werden. Am Anfang der Seite kann ein Inhaltsverzeichnis angezeigt werden. Die gesamte Verwaltung erfolgt via Web. Unix/(Windows), deutsch, kostenlos.

1.2. Was kann jsFAQ?

jsFAQ ist eine FAQ-Datenbank für die eigene Homepage mit folgenden Funktionen:

1.3. Voraussetzungen

Nebst einem Webserver mit Perl/CGI Unterstützung wird nichts weiteres vorausgesetzt.

1.4. Lizenzbestimmungen

Dieses Skript basiert auf den STANDARD-Lizenzbedinungen, die Sie unter http://www.cgicorner.ch/download/download-info oder in der Datei cgicorner.txt im ZIP-Archiv finden.

2. Installation

2.1. Dateien kopieren und Berechtigungen setzen

Folgende Dateien müssen kopiert und mit den entsprechenden Berechtigungen versehen werden:

 cgi-bin - Verzeichnis, z.B. /cgi-bin/jsfaq/
. chmod 755 (od. 777) Verzeichnis
jsfaq.cgi chmod 755 Hauptscript
config.cgi chmod 700 Konfiguration

 HTML-Verzeichnis, z.B. /jsfaq/images
. chmod 755 (od. 777) Verzeichnis
*:jpg, *.gif chmod 644 Bilder
 data-Verzeichnis, z.B. /cgi-bin/jsfaq/data/
 .htaccess Datei empfohlen, um Zugriffe via Webbrowser komplett zu verhindern
. chmod 755 (od. 777) Verzeichnis
style.css chmod 600 CSS für Adminbereich
data.pl chmod 600 allgemeine Daten (*)
error.pl chmod 600 Fehlerhafte Loginversuche (*)
*.template chmod 600 Template-Dateien
*.dat chmod 600 FAQ-Daten

Anmerkung: Die mit (*) gekennzeichneten Dateien befinden sich nicht im ZIP-Archiv und werden erst im Betrieb erstellt.

Je nach Konfiguration des Webservers werden keine Bilder aus dem cgi-bin Verzeichnis angezeigt. Deshalb wird empfohlen, die Bilder in ein Verzeichnis ausserhalb von cgi-bin zu kopieren und die entsprechenden Bildpfade im Adminbereich anzupassen. Die Standard-Konfiguration des Scripts geht davon aus, dass Bilder im cgi-bin Verzeichnis angezeigt werden können und auch dort abgespeichert sind. Bei einer Änderung der Installations-Verzeichnisse ist zwingend eine Anpassung im Adminbereich notwendig.

jsfaq.cgi benötigt Schreibzugriff auf das Script-Verzeichnis. Dazu ist - je nach Konfiguration des Webservers - ein chmod 777 für das Verzeichnis notwendig. Möglicherweise meldet das Script nach dem chmod 777 jedoch einen "Internal Server Error". Zuerst sollte also immer chmod 755 versucht werden.

2.2. Script ausführen

Um das Script aufzurufen, stehen folgende URLs zur Verfügung:

/cgi-bin/jsfaq/jsfaq.cgi?product=meinbereich FAQ für "meinbereich"
/cgi-bin/jsfaq/jsfaq.cgi?action=admin Administrationsbereich (Passwortgeschützt)

3. Konfiguration

3.1. Erster Login

Die Konfiguration erfolgt zum grössten Teil via Web. Die URL für den Administrationsbereich lautet: http://www.meinserver.ch/cgi-bin/jsfaq/jsfaq.cgi?action=admin

Beim ersten Login lautet der Benutzername admin, kein Passwort. Aus Sicherheitsgrünen sollten Sie schnellstmöglich ein Passwort setzen. Wählen Sie dazu im Adminbereich den Link "Login-Daten ändern".

Zu diesem Zeitpunkt werden - je nach Installationspfaden - möglicherweise noch keine Bilder angezeigt, dies hat aber nichts weiter zu bedeuten...

3.2. System Einstellungen ändern

In diesem Abschnitt können Sie die Pfade zu Bildern und Templates konfigurieren:

Daten-Datei (temporär) Datendatei mit Session-IDs für den Adminbereich
Error-Datei Fehler-Protokoll der fehlerhaften Loginversuche
Copyright Copyright-Hinweise im Adminbereich
CSS für Adminbereich CSS-Stylesheet für Adminbereich
Bilder-Verzeichnis Browser-Pfad zum Verzeichnis, in dem die Bilder gespeichert sind (mit abschliessendem /)
diverse Bilder Dateiname diverser Bilder, relativ zum Bilderverzeichnis
FAQ Template HTML-Template für FAQ-Bereich (UNIX-Pfad)
Datei "Allgemeine Fragen" FAQ-Datei für allgemeine Fragen, welche bei jedem Produkt angezeigt werden.

3.3. Kategorien

In diesem Bereich können die einzelnen FAQs konfiguriert werden. Für jedes Produkt sind folgende Einstellungen notwendig:

Name Produkt-Name. Muss der URL übergeben werden und sollte keine Leer- und Sonderzeichen beinhalten
Dateiname Dateiname der Daten-Datei (UNIX-Pfad)
Beschreibung Titel des Produkts (kann in Template angezeigt werden)

3.4. FAQ editieren

In diesem Menü können die einzelnen Inserate editiert oder gelöscht werden.

3.5. Dateisperre

Jeder Schreibzugriff auf eine Datei wird mit einer betriebssystem-unabhängigen Dateisperre versehen. Diese Dateisperre sollte in der Regel wieder aufgehoben werden, kann aber in Ausnahmefällen (z.B. Script-Absturz) erhalten bleiben.

In der Regel kann die Datei wieder via Adminoberfläche entsperrt werden. Falls dies nicht geht, muss die entsprechende lock-Datei gelöscht werden (Beispiel: Lock-Datei für config.pl heisst config.pl.lock).

3.6. Online Versions-Check

Der Online Versions-Check ist eine einfache Möglichkeit, zu überprüfen, ob die eingesetzte Version noch aktuell ist.

Um den Versions-Check zu starten, muss man auf den Link bei der Versions-Nummer unten rechts klicken. Danach wird eine Verbindung mit dem Server von cgicorner.ch hergestellt. Dazu ist eine Internet-Verbindung notwendig.

Es wird nur die Versionsnummer sowie das letzte Änderungsdatum an den Server von cgicorner.ch übermittelt. cgicorner.ch garantiert, dass keine weiteren Konfigurationseinstellungen oder Benutzerdaten gesendet werden. Der Browser übermittelt möglicherweise noch den Referer, der mögliche Informationen über den Einsatzort liefert. Wenn Sie dies nicht möchten, installieren Sie eine Personal-Firewall, welcher die Referer-Informationen blockiert oder kopieren Sie den Link in die Zwischenablage und fügen Sie ihn manuell in die Browser-Adressleiste ein.

4. Template

Ein Template kann vereinfacht wie folgt dargestellt werden:

<html>
  <body>
    <h1>FAQ für <!--productname--></h1>

    <!--index_title-->
    <h2><!--title--></h2>
    <!--/index_title-->

    <!--index_link-->
    <a href="#FAQ_<!--count-->"><!--question--></a><br />
    <!--/index_link-->

    <!--showIndex-->

    <table border="0" width="100%">

      <!--content_title-->
      <tr><td> </td></tr>
      <tr><td><h2><!--title--></h2></td></tr>
      <!--/content_title-->

      <!--content_question-->
      <tr><td class="blue" valign="top"><a name="FAQ_<!--count-->"></a><!--question--></td></tr>
      <!--/content_question-->

      <!--content_answer-->
      <tr><td class="grey"><!--answer--></td></tr>
      <tr><td> </td></tr>
      <!--/content_answer-->

      <!--showFAQ-->

      </table>
  </body>
</html>

Im allgemeinen Text (schwarz) wird das Grundgerüst für das Template festgelegt. Dort sind zwei Felder möglich:

In diesem Template müssen nun mehrere Bereiche definiert werden:




Copyright © 2008 by Jürg Sommer, scripts@cgicorner.ch
http://www.cgicorner.ch
Letzte Änderung: 21. Februar 2008