MFde:
- Resync the FDP primer chapter "the-website". - Update FreeBSDde copyright for 2017
This commit is contained in:
parent
01d1b3b387
commit
69291744f8
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=49985
2 changed files with 227 additions and 94 deletions
|
@ -49,7 +49,7 @@
|
|||
</copyright>
|
||||
|
||||
<copyright>
|
||||
<year>1998-2016</year>
|
||||
<year>1998-2017</year>
|
||||
<holder>The FreeBSD German Documentation Project</holder>
|
||||
</copyright>
|
||||
|
||||
|
|
|
@ -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,23 +39,116 @@
|
|||
</authorgroup>
|
||||
</info>
|
||||
|
||||
<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>
|
||||
|
||||
<sect1 xml:id="the-website-env">
|
||||
<title>Umgebungsvariablen</title>
|
||||
|
||||
<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>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>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry xml:id="the-website-env-destdir">
|
||||
<term><varname>DESTDIR</varname></term>
|
||||
|
||||
<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 xml:id="the-website-env-englishonly">
|
||||
<term><varname>ENGLISH_ONLY</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>Default: Nicht definiert. Baue die Webseite inklusive
|
||||
aller Übersetzungen.</para>
|
||||
|
||||
<para><userinput>ENGLISH_ONLY=yes</userinput>: Baue nur die
|
||||
englischen Dokumente und ignoriere alle Übersetzungen.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry xml:id="the-website-env-webonly">
|
||||
<term><varname>WEB_ONLY</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>Default: Nicht definiert. Baue sowohl die Webseite als
|
||||
auch alle Bücher und Artikel.</para>
|
||||
|
||||
<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 xml:id="the-website-env-weblang">
|
||||
<term><varname>WEB_LANG</varname></term>
|
||||
|
||||
<listitem>
|
||||
<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><userinput>WEB_LANG="de_DE.ISO8859-1 fr_FR.ISO8859-1"</userinput></screen>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<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. 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>
|
||||
beginnen.</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>
|
||||
|
||||
<screen>&prompt.user; <userinput>cd ~/doc/en_US.ISO8859-1/htdocs</userinput>
|
||||
&prompt.user; <userinput>make all</userinput></screen>
|
||||
<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>
|
||||
|
@ -64,28 +157,131 @@
|
|||
Weg, dies zu vermeiden, ist die Installation der <link
|
||||
xlink:href="&url.books.handbook;/ports.html#ports-tree">Ports-Sammlung</link>.</para>
|
||||
</tip>
|
||||
</sect1>
|
||||
|
||||
<sect1 xml:id="the-website-install">
|
||||
<title>Installieren der Webseiten auf Ihrem Server</title>
|
||||
<example xml:id="the-website-examples-build">
|
||||
<title>Die komplette Webseite und alle Dokumente bauen</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>Bauen Sie die Webseite und alle Dokumente. Die erzeugten
|
||||
Dateien verbleiben dabei im Dokumentationsbaum:</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.user; <userinput>cd ~/doc/en_US.ISO8859-1/htdocs/</userinput>
|
||||
&prompt.user; <userinput>make all</userinput></screen>
|
||||
</example>
|
||||
|
||||
<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>
|
||||
<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
|
||||
|
@ -94,67 +290,4 @@
|
|||
|
||||
<screen>&prompt.root; <userinput>find <replaceable>/usr/local/www</replaceable> -ctime 3 -delete</userinput></screen>
|
||||
</sect1>
|
||||
|
||||
<sect1 xml:id="the-website-env">
|
||||
<title>Umgebungsvariablen</title>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<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>
|
||||
|
||||
<screen>&prompt.root; <userinput>make ENGLISH_ONLY="" all install clean</userinput></screen>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<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>
|
||||
|
||||
<screen>&prompt.root; <userinput>make WEB_ONLY=YES all install</userinput></screen>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<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>
|
||||
|
||||
<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>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para><varname>WEB_ONLY</varname>, <varname>ENGLISH_ONLY</varname>,
|
||||
<varname>WEB_LANG</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>
|
||||
</chapter>
|
||||
|
|
Loading…
Reference in a new issue