%
% mini_httpd_sitecopy.tex
% Last Update: $Id$
%
%%%%%%%%%%%%%%%%%%%%%% Kapitel Mini_httpd_sitecopy %%%%%%%%%%%%%%%%%%%%%%%%

\chapter{Das Mini\_HTTPD\_Sitecopy-Paket}

    Sitecopy ist ein Programm zur intelligenten Synchronisation zwischen
    lokalen Verzeichnissen und korrespondierenden Webseiten. Es werden
    dabei nur die Dateien aktualisiert, hinzugef"ugt oder gel"oscht, die
    sich tats"achlich ge"andert haben. Der Upload erfolgt per FTP und kann
    f"ur beliebige Server konfiguriert werden.

    Das Paket erzeugt eine simple Weboberfl"ache, die innerhalb des
    Mini\_HTTPD dargestellt wird.


\section{Die Installation}

    Das Paket wird "uber das Setup-Men"u installiert. Wird eine "altere
    Paketversion vorgefunden, so wird diese deinstalliert bevor die
    neuen Programmdateien installiert werden.


\section{Das Men"u im Setup-Programm}

    Das Mini\_HTTPD\_Sitecopy-Modulmen"u im Setup-Programm ist wie folgt
    aufgebaut:

    \begin{itemize}
        \item ...
        \item Goto modules: Zum Modulmen"u verzweigen
        \begin{itemize}
            \item ...
            \item Sitecopy - Smart FTP Uploader
            \begin{itemize}
                \item View documentation: Anzeigen der Dokumentation
                \item Edit configuration: Bearbeiten der Konfiguration
                \item Advanced configuration file handling: Konfigurationen verwalten
                \item Exit: Untermen"u verlassen
            \end{itemize}
        \end{itemize}
        \item ...
        \item Exit: Untermen"u verlassen
    \end{itemize}

    Die Men"upunkte d"urften selbsterkl"arend sein, da sie keinerlei weitere
    Eingaben erwarten. Aus diesem Grund wird auf deren Funktion nicht weiter
    eingegangen.


\section{Die Konfigurationsdatei}

    In der Konfigurationsdatei, die "uber das Men"u zug"anglich ist, sind
    folgende Parameter vorhanden; wer sie von Hand editieren will findet
    sie unter \texttt{/etc/config.d/mini\_httpd\_sitecopy}.


\section{Die Parameter}

\begin{description}
    \config{START\_SITECOPY}{START\_SITECOPY}{STARTSITECOPY}
        "Uber diesen Parameter wird das SiteCopy-Paket durch Setzen des
        Wertes `yes' aktiviert, der Wert `no' deaktiviert es.

        G"ultige Werte: yes, no

        Standardwert: \texttt{MINI\_SITECOPY='no'}

    \config{SITECOPY\_N}{SITECOPY\_N}{SITECOPYN}
        "Uber diesen Parameter wird die Anzahl der Webprojekte bzw.
        Webseiten/Verzeichniskombinationen angegeben, die SiteCopy
        ber"ucksichtigen soll.

        G"ultige Werte: Zahl

        Standardwert: \texttt{SITECOPY\_N='1'}

    \config{SITECOPY\_x\_ACTIVE}{SITECOPY\_x\_ACTIVE}{SITECOPYxACTIVE}
        "Uber diesen Parameter wird das Webprojekt durch Setzen des
        Wertes `yes' aktiviert, der Wert `no' deaktiviert es.

        G"ultige Werte: yes, no

        Standardwert: \texttt{SITECOPY\_1\_ACTIVE='no'}

    \config{SITECOPY\_x\_NAME}{SITECOPY\_x\_NAME}{SITECOPYxNAME}
        "Uber diesen Parameter legt man einen eindeutiger Namen f"ur
        das Webprojekt (ggfs. der Verzeichnisname) fest.

        G"ultige Werte: Text

        Standardwert: \texttt{SITECOPY\_1\_NAME='home'}

    \config{SITECOPY\_x\_SERVER}{SITECOPY\_x\_SERVER}{SITECOPYxSERVER}
        "Uber diesen Parameter legt man den Namen des entfernten
        FTP-Servers fest.

        G"ultige Werte: FTP-Servername

        Beispiel: \texttt{SITECOPY\_1\_SERVER='ibp-consult.com'}

    \config{SITECOPY\_x\_URL}{SITECOPY\_x\_URL}{SITECOPYxURL}
        "Uber diesen Parameter legt man das Webverzeichnis zur
        Pr"ufung des Kopiervorgangs fest.

        G"ultige Werte: URL

        Beispiel: \texttt{SITECOPY\_1\_URL='http://www.ibp-consult.com/home'}

    \config{SITECOPY\_x\_USER}{SITECOPY\_x\_USER}{SITECOPYxUSER}
        "Uber diesen Parameter legt man den Anmeldenamen f"ur den
        Zugriff auf den FTP-Server fest.

        G"ultige Werte: Username

        Beispiel: \texttt{SITECOPY\_1\_USER='ibp'}

    \config{SITECOPY\_x\_PASS}{SITECOPY\_x\_PASS}{SITECOPYxPASS}
        "Uber diesen Parameter legt man das Kennwort f"ur den Zugriff
        auf den FTP-Server fest.

        G"ultige Werte: Kennwort

        Beispiel: \texttt{SITECOPY\_1\_PASS='geheim'}

    \config{SITECOPY\_x\_LOCAL}{SITECOPY\_x\_LOCAL}{SITECOPYxLOCAL}
        "Uber diesen Parameter legt man den Verzeichnispfad auf dem
        lokalen \eisfair-Server fest.

        G"ultige Werte: Absoluter Verzeichnispfad

        Beispiel: \texttt{SITECOPY\_1\_LOCAL='/var/www/htdocs/home/'}

    \config{SITECOPY\_x\_REMOTE}{SITECOPY\_x\_REMOTE}{SITECOPYxREMOTE}
        "Uber diesen Parameter legt man den Verzeichnispfad auf dem
        entfernten FTP-Server fest. Es muss sicher gestellt werden,
        dass dieses Verzeichnis vorhanden ist, da es nicht durch das
        Sitecopy-Programm angelegt wird.

        G"ultige Werte: Verzeichnispfad

        Beispiel: \texttt{SITECOPY\_1\_REMOTE='~/public\_html/home/'}
\end{description}



    "Uber die Parameter SITECOPY\_LINK\_x\_.. k"onnen HTML-Verweise f"ur die
    Mini\_HTTPD-Webseite generiert werden, die eine schnell "Uberpr"ufung der
    Updates erlauben.

\begin{description}
    \config{SITECOPY\_LINK\_N}{SITECOPY\_LINK\_N}{SITECOPYLINKN}
        "Uber diesen Parameter legt man den Anzahl der anzulegenden
        Verweise auf der Mini\_HTTPD-Webseite fest.

        G"ultige Werte: Zahl

        Standardwert: \texttt{SITECOPY\_LINK\_N='1'}

    \config{SITECOPY\_LINK\_x\_ACTIVE}{SITECOPY\_LINK\_x\_ACTIVE}{SITECOPYLINKxACTIVE}
        "Uber diesen Parameter wird der Verweis durch Setzen des Wertes
        `yes' aktiviert, der Wert `no' deaktiviert ihn.

        G"ultige Werte: yes, no

        Standardwert: \texttt{SITECOPY\_LINK\_1\_ACTIVE='no'}

    \config{SITECOPY\_LINK\_x\_NAME}{SITECOPY\_LINK\_x\_NAME}{SITECOPYLINKxNAME}
        "Uber diesen Parameter legt man den eindeutigen Verweisnamen
        fest welcher auf der Mini\_HTTPD-Webseite angezeigt werden soll.

        G"ultige Werte: Text

        Beispiel: \texttt{SITECOPY\_LINK\_1\_NAME='Homepage des Sitecopy-Paketes'}

    \config{SITECOPY\_LINK\_x\_TARGET}{SITECOPY\_LINK\_x\_TARGET}{SITECOPYLINKxTARGET}
        "Uber diesen Parameter wird das Zielfenster f"ur den Verweis
        festgelegt. Folgende Schl"usselw"orter haben hierbei eine
        gesonderte Bedeutung:


        \begin{itemize}
            \item \_blank  - Der Verweis wird in einem neuen Fenster
                             ge"offnet.
            \item \_self   - Der Verweis wird im aktuellen Fenster
                             ge"offnet.
            \item \_parent - Der Verweis sprengt bei verschachtelten
                             Framesets das aktuelle Frameset.
            \item \_top    - Der Verweis sprengt bei verschachtelten
                             Framesets alle Framesets.
        \end{itemize}

        Standardwert: \texttt{SITECOPY\_LINK\_1\_TARGET='\_blank'}

    \config{SITECOPY\_LINK\_x\_HREF}{SITECOPY\_LINK\_x\_HREF}{SITECOPYLINKxHREF}
        "Uber diesen Parameter wird die Referenz-URL angegeben.

        G"ultige Werte: URL

        Beispiel: \texttt{SITECOPY\_LINK\_1\_HREF='https://www.pack-eis.de/?p=mini\_httpd\_sitecopy'}
\end{description}


\section{"Ubersicht der Verweise auf der Webseite}

    \begin{itemize}
        \item VIEW   - Der view-Verweis erlaubt die Anzeige der
                       SiteCopy-Einstellungen f"ur diese Webseite.
        \item INIT   - Vor der ersten Benutzung \textbf{muss} f"ur jedes
                       Verzeichnis der init-Verweis benutzt werden,
                       damit eine ben"otigte Steuerdatei angelegt wird.
                       Sp"ater erlaubt dieser Verweis ein R"ucksetzen
                       der Seite.
        \item FETCH  - Der fetch-Verweis erlaubt es, schon vorhanden
                       Webstrukturen vom entfernten Server als Vorlage
                       einzubinden.
        \item VERIFY - Mit dem verify-Verweis werden die lokalen und
                       entfernten Strukturen "uberpr"uft.
        \item TEST   - Der test-Verweis stellt die notwendigen
                       SiteCopy-Aktionen dar, ohne sie tats"achlich
                       auszuf"uhren. Dieser Verweis ist ebenfalls f"ur
                       alle Seiten verf"ugbar.
        \item UPDATE - Der update-Verweis f"uhrt schlie"slich das
                       SiteCopy-Update aus. Die ausgef"uhrten Aktionen
                       werden protokolliert. Dieser Verweis ist ebenfalls
                       f"ur alle Seiten verf"ugbar.
    \end{itemize}

    SiteCopy kennt zwar noch weitere Parameter, die aus Gr"unden der
    "Ubersichtlichkeit allerdings nicht aufgef"uhrt werden.
