Date: Mon, 13 Feb 2017 21:03:05 +0000 (UTC) From: Johann Kois <jkois@FreeBSD.org> To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r49985 - in head/de_DE.ISO8859-1/books/fdp-primer: . the-website Message-ID: <201702132103.v1DL35ju050237@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jkois Date: Mon Feb 13 21:03:05 2017 New Revision: 49985 URL: https://svnweb.freebsd.org/changeset/doc/49985 Log: MFde: - Resync the FDP primer chapter "the-website". - Update FreeBSDde copyright for 2017 Modified: head/de_DE.ISO8859-1/books/fdp-primer/book.xml head/de_DE.ISO8859-1/books/fdp-primer/the-website/chapter.xml Modified: head/de_DE.ISO8859-1/books/fdp-primer/book.xml ============================================================================== --- head/de_DE.ISO8859-1/books/fdp-primer/book.xml Mon Feb 13 19:44:18 2017 (r49984) +++ head/de_DE.ISO8859-1/books/fdp-primer/book.xml Mon Feb 13 21:03:05 2017 (r49985) @@ -49,7 +49,7 @@ </copyright> <copyright> - <year>1998-2016</year> + <year>1998-2017</year> <holder>The FreeBSD German Documentation Project</holder> </copyright> Modified: head/de_DE.ISO8859-1/books/fdp-primer/the-website/chapter.xml ============================================================================== --- head/de_DE.ISO8859-1/books/fdp-primer/the-website/chapter.xml Mon Feb 13 19:44:18 2017 (r49984) +++ head/de_DE.ISO8859-1/books/fdp-primer/the-website/chapter.xml Mon Feb 13 21:03:05 2017 (r49985) @@ -30,7 +30,7 @@ $FreeBSD$ $FreeBSDde$ - basiert auf: r43126 + basiert auf: r49811 --> <chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="the-website"> <info><title>Die Webseite</title> @@ -39,122 +39,255 @@ </authorgroup> </info> - <sect1 xml:id="the-website-build"> - <title>Die Webseiten bauen</title> + <para>Die &os; Webseite ist Teil der &os;-Dokumentation. Die Dateien + der englischen Webseite befinden sich im Unterverzeichnis + <filename>en_US.ISO8859-1/htdocs</filename> des Dokumentationsbaum + (in diesem Beispiel unter <filename>~/doc</filename>).</para> - <para>Nachdem Sie die Quellen der Webseite erfolgreich - heruntergeladen haben, können Sie mit dem Bau der Webseite - beginnen. In unserem Beispiel erfolgt der Bau im Verzeichnis - <filename role="directory"><replaceable>~/doc</replaceable></filename>, - in dem sich bereits alle benötigten Dateien befinden.</para> - - <para>Sie starten den Bau der Webseiten, indem Sie in das - Unterverzeichnis <filename>en_US.ISO8859-1/htdocs</filename> - des Dokumentationsbaums (in unserem Beispiel also unter - <filename>~/doc</filename>) wechseln und dort den Befehl - <command>make all</command> ausführen.</para> + <sect1 xml:id="the-website-env"> + <title>Umgebungsvariablen</title> - <screen>&prompt.user; <userinput>cd ~/doc/en_US.ISO8859-1/htdocs</userinput> -&prompt.user; <userinput>make all</userinput></screen> + <para>Sie haben die Möglichkeit, über Umgebungsvariablen + festzulegen, welchen Teil der Webseite Sie bauen wollen + und in welches Verzeichnis Sie die fertige Webseite + installieren wollen.</para> <tip> - <para>Der Bau der Webseiten erfordert die Datei <filename>INDEX</filename> - der Ports-Sammlung und schlägt fehl, wenn - <filename>/usr/ports</filename> nicht existiert. Der einfachste - Weg, dies zu vermeiden, ist die Installation der <link - xlink:href="&url.books.handbook;/ports.html#ports-tree">Ports-Sammlung</link>.</para> + <para>Beim Bau der Webseiten (durch &man.make.1;) wird + angenommen, dass definierte Variablen gesetzt sind (dies gilt + auch dann, wenn die Variable leer ist!). Die folgenden + Beispiele zeigen die empfohlene Definition und Nutzung der + möglichen Variablen. Wenn Sie diese Variablen auf andere + Werte oder Methoden setzen, kann es zu überraschenden + Ergebnissen kommen.</para> </tip> - </sect1> - <sect1 xml:id="the-website-install"> - <title>Installieren der Webseiten auf Ihrem Server</title> - - <para>Führen Sie <command>make install</command> aus und setzen Sie - die Variable <varname>DESTDIR</varname> auf das Verzeichnis, in das - Sie die Webseiten installieren wollen. Die daraus resultierenden - Dateien werden unter <filename>$DESTDIR/data</filename> installiert, - was als die document root ihres Webservers konfiguriert sein - sollte.</para> - - <para>Die Installation der Webseiten wird als - <systemitem class="username">root</systemitem> ausgeführt, weil die - Berechtigungen des Webserver-Verzeichnisses den Schreibzugriff für - normale Benutzer verhindern. Im folgenden Beispiel wurden die - Webseiten durch den Benutzer <systemitem - class="username">jru</systemitem> in dessen Heimatverzeichnis, - also unter <filename>/usr/home/jru/doc</filename> gebaut.</para> - - <screen>&prompt.root; <userinput>cd /home/jru/doc/en_US.ISO8859-1/htdocs</userinput> -&prompt.root; <userinput>env DESTDIR=<replaceable>/usr/local/www</replaceable> make install</userinput></screen> - - <para>Veraltete (und nicht mehr verwendete) Dateien werden während - der Installation nicht automatisch entfernt. Der folgende Befehl - findet (und löscht) alle Dateien im Installationsverzeichnis, die - in den letzten drei Tagen nicht aktualisiert wurden:</para> - - <screen>&prompt.root; <userinput>find <replaceable>/usr/local/www</replaceable> -ctime 3 -delete</userinput></screen> - </sect1> + <variablelist> + <varlistentry xml:id="the-website-env-destdir"> + <term><varname>DESTDIR</varname></term> - <sect1 xml:id="the-website-env"> - <title>Umgebungsvariablen</title> + <listitem> + <para>DESTDIR legt fest, in welches Verzeichnis die fertig + gebaute Webseite installiert werden soll.</para> + <para>Diese Variable wird am besten durch &man.env.1; oder + durch die Shell-eigene Methode zum setzen von Variablen, + also <command>setenv</command> für &man.csh.1; oder + <command>export</command> für &man.sh.1;.</para> + </listitem> + </varlistentry> + </variablelist> <variablelist> - <varlistentry> + <varlistentry xml:id="the-website-env-englishonly"> <term><varname>ENGLISH_ONLY</varname></term> <listitem> - <para>Ist diese Variable gesetzt und nicht leer, bauen und - installieren die Makefiles ausschließlich die - englischen Dokumente. Sämtliche Übersetzungen - werden dabei ignoriert. Dazu ein Beispiel:</para> - - <screen>&prompt.root; <userinput>make ENGLISH_ONLY=YES all install</userinput></screen> - - <para>Wenn Sie die Variable <varname>ENGLISH_ONLY</varname> - deaktivieren und alle Webseiten inklusive aller - Übersetzungen bauen wollen, setzen Sie die Variable - <varname>ENGLISH_ONLY</varname> auf einen leeren Wert:</para> + <para>Default: Nicht definiert. Baue die Webseite inklusive + aller Übersetzungen.</para> - <screen>&prompt.root; <userinput>make ENGLISH_ONLY="" all install clean</userinput></screen> + <para><userinput>ENGLISH_ONLY=yes</userinput>: Baue nur die + englischen Dokumente und ignoriere alle Übersetzungen.</para> </listitem> </varlistentry> - <varlistentry> + <varlistentry xml:id="the-website-env-webonly"> <term><varname>WEB_ONLY</varname></term> <listitem> - <para>Ist diese Variable gesetzt und nicht leer, bauen und - installieren die Makefiles nur die - <acronym>HTML</acronym>-Seiten des - Verzeichnisses <filename>en_US.ISO8859-1/htdocs</filename>. - Alle anderen Dokumente des Verzeichnisses - <filename>en_US.ISO8859-1</filename> - (wie Handbuch, FAQ, Artikel) werden dabei ignoriert:</para> + <para>Default: Nicht definiert. Baue sowohl die Webseite als + auch alle Bücher und Artikel.</para> - <screen>&prompt.root; <userinput>make WEB_ONLY=YES all install</userinput></screen> + <para><userinput>WEB_ONLY=yes</userinput>: Baue oder installiere + nur die <acronym>HTML</acronym>-Seiten im Verzeichis + <filename>en_US.ISO8859-1/htdocs</filename>. Ignoriere alle + anderen Verzeichnisse und Dokumente, Bücher und Artikel.</para> </listitem> </varlistentry> - <varlistentry> + <varlistentry xml:id="the-website-env-weblang"> <term><varname>WEB_LANG</varname></term> <listitem> - <para>Ist diese Variable gesetzt, wird die Dokumentation nur - für die durch diese Variable festgelegten Sprachen - gebaut und im Verzeichnis - <filename role="directory"><replaceable>~/doc</replaceable></filename> - gebaut und danach installiert. Alle weiteren Sprachen - (ausgenommen Englisch) werden ignoriert. Dazu ein Beispiel:</para> + <para>Default: Nicht definiert. Baue die Webseite in allen + verfügbaren Sprachen.</para> + + <para>Geben Sie die Sprachen (durch Leerzeichen getrennt) an, + in denen Sie die Webseite bauen und/oder installieren + wollen. Die Namen der zu bauenden Sprachen entsprechen dabei + den Namen der Dokumentwurzelverzeichnisse. Wollen Sie + beispielsweise die deutschen und französischen Dokumente + einschließen:</para> - <screen>&prompt.root; <userinput>make WEB_LANG="el_GR.ISO8859-7 es_ES.ISO8859-1 hu_HU.ISO8859-2 nl_NL.ISO8859-1" all install</userinput></screen> + <screen><userinput>WEB_LANG="de_DE.ISO8859-1 fr_FR.ISO8859-1"</userinput></screen> </listitem> </varlistentry> </variablelist> - - <para><varname>WEB_ONLY</varname>, <varname>ENGLISH_ONLY</varname>, - <varname>WEB_LANG</varname> sind Variablen für &man.make.1;. + + <para><varname>WEB_ONLY</varname>, <varname>WEB_LANG</varname> und + <varname>ENGLISH_ONLY</varname> sind Variablen für &man.make.1;. Diese werden entweder in <filename>/etc/make.conf</filename>, in <filename>Makefile.inc</filename> oder als Umgebungsvariablen auf der Kommandozeile oder in Ihrer Konfigurationsdatei gesetzt.</para> + </sect1> + + <sect1 xml:id="the-website-build"> + <title>Die Webseiten bauen</title> + + <para>Nachdem Sie die Quellen der Webseite erfolgreich + heruntergeladen haben, können Sie mit dem Bau der Webseite + beginnen.</para> + + <para>Die Installation der Webseiten wird als + <systemitem class="username">root</systemitem> ausgeführt, weil die + Berechtigungen des Webserver-Verzeichnisses den Schreibzugriff für + normale Benutzer verhindern. Zu Testzwecken können die Dateien auch + als normaler Benutzer in ein temporäres Verzeichnis installiert + werden.</para> + + <para>In den folgenden Beispielen werden die + Webseiten durch den Benutzer + <systemitem class="username">jru</systemitem> in dessen + Heimatverzeichnis, also unter + <filename>/usr/home/jru/doc</filename>, gebaut.</para> + + <tip> + <para>Der Bau der Webseiten erfordert die Datei <filename>INDEX</filename> + der Ports-Sammlung und schlägt fehl, wenn + <filename>/usr/ports</filename> nicht existiert. Der einfachste + Weg, dies zu vermeiden, ist die Installation der <link + xlink:href="&url.books.handbook;/ports.html#ports-tree">Ports-Sammlung</link>.</para> + </tip> + + <example xml:id="the-website-examples-build"> + <title>Die komplette Webseite und alle Dokumente bauen</title> + + <para>Bauen Sie die Webseite und alle Dokumente. Die erzeugten + Dateien verbleiben dabei im Dokumentationsbaum:</para> + + <screen>&prompt.user; <userinput>cd ~/doc/en_US.ISO8859-1/htdocs/</userinput> +&prompt.user; <userinput>make all</userinput></screen> + </example> + + <example xml:id="the-website-examples-buildinstall-englishonly"> + <title>Nur die englische Webseite bauen</title> + + <para>Bauen Sie nur die englische Webseite als Benutzer + <systemitem class="username">jru</systemitem> und installieren + Sie die erzeugten Dateien nach <filename>/tmp/www</filename>, + um die Webseite testen zu können:</para> + + <screen>&prompt.user; <userinput>cd ~/doc/en_US.ISO8859-1/htdocs/</userinput> +&prompt.user; <userinput>env DESTDIR=/tmp/www make ENGLISH_ONLY=yes WEB_ONLY=yes all install</userinput></screen> + + <para>Änderungen an statischen Dateien können Sie einfach testen, + indem Sie die geänderten Dateien in Ihrem Webbrowser aufrufen. + Haben Sie Seite wie eben gezeigt gebaut, können Sie sich die + geänderte Startseite ganz einfach anzeigen lassen:</para> + + <screen>&prompt.user; <userinput>firefox /tmp/www/data/index.html</userinput></screen> + + <para>Änderungen an dynamischen Dateien können allerdings nur auf + einem Webserver (der auf dem lokalen System läuft) getestet + werden. Nachdem Sie die Website wie weiter oben gezeigt gebaut + haben, können Sie <package>www/apache24</package> mit folgender + Konfigurationsdatei + <filename>/usr/local/etc/apache24/httpd.conf</filename> starten + und Ihre Änderungen testen:</para> + + <programlisting># httpd.conf for testing the FreeBSD website +Define TestRoot "/tmp/www/data" + +# directory for configuration files +ServerRoot "/usr/local" + +Listen 80 + +# minimum required modules +LoadModule authz_core_module libexec/apache24/mod_authz_core.so +LoadModule mime_module libexec/apache24/mod_mime.so +LoadModule unixd_module libexec/apache24/mod_unixd.so +LoadModule cgi_module libexec/apache24/mod_cgi.so +LoadModule dir_module libexec/apache24/mod_dir.so + +# run the webserver as user and group +User www +Group www + +ServerAdmin you@example.com +ServerName fbsdtest + +# deny access to all files +<Directory /> + AllowOverride none + Require all denied +</Directory> + +# allow access to the website directory +DocumentRoot "${TestRoot}" +<Directory "${TestRoot}"> + Options Indexes FollowSymLinks + AllowOverride None + Require all granted +</Directory> + +# prevent access to .htaccess and .htpasswd files +<Files ".ht*"> + Require all denied +</Files> + +ErrorLog "/var/log/httpd-error.log" +LogLevel warn + +# set up the CGI script directory +<Directory "${TestRoot}/cgi"> + AllowOverride None + Options None + Require all granted + Options +ExecCGI + AddHandler cgi-script .cgi +</Directory> + +Include etc/apache24/Includes/*.conf</programlisting> + + <para>Starten Sie den Webserver wie folgt:</para> + + <screen>&prompt.root; <userinput>service apache24 onestart</userinput></screen> + + <para>Die Webseite ist danach unter der Adresse + <link xlink:href="http://localhost"/> erreichbar. Beachten Sie + aber, dass viele Links auf die echte &os;-Webseite zeigen. Daher + werden diese Links die externe Seite aufrufen und nicht Ihre + lokale Testversion. Um dies zu verhindern und einen kompletten + lokalen Test Ihrer lokalen Seite durchzuführen, müssen Sie + <acronym>DNS</acronym> temporär umkonfigurieren, damit + <literal>www.FreeBSD.org</literal> als + <literal>localhost</literal> oder als Ihre lokale + <acronym>IP</acronym>-Adresse aufgelöst wird.</para> + </example> + + <example xml:id="the-website-examples-buildinstall"> + <title>Die Webseite bauen und installieren</title> + + <para>Bauen Sie die Webseite und alle Dokumente als Benutzer + <systemitem class="username">jru</systemitem>. Installieren Sie + die erzeugten Dateien als + <systemitem class="username">root</systemitem> in das + Standardverzeichnis, also nach + <filename>/root/public_html</filename>:</para> + + <screen>&prompt.user; <userinput>cd ~/doc/en_US.ISO8859-1/htdocs</userinput> +&prompt.user; <userinput>make all</userinput> +&prompt.user; <userinput>su -</userinput> +Password: +&prompt.root; <userinput>cd /usr/home/jru/doc/en_US.ISO8859-1/htdocs</userinput> +&prompt.root; <userinput>make install</userinput></screen> + </example> + + <para>Veraltete (und nicht mehr verwendete) Dateien werden während + der Installation nicht automatisch entfernt. Der folgende Befehl + findet (und löscht) alle Dateien im Installationsverzeichnis, die + in den letzten drei Tagen nicht aktualisiert wurden:</para> + + <screen>&prompt.root; <userinput>find <replaceable>/usr/local/www</replaceable> -ctime 3 -delete</userinput></screen> </sect1> </chapter>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201702132103.v1DL35ju050237>