website view fr/doc/handbook/web-server.html @ rev 1344

Resize balinor logo to 120px
author Christophe Lincoln <pankso@slitaz.org>
date Fri Jan 22 23:02:15 2021 +0100 (2021-01-22)
parents 0ae6cfc85e03
children
line source
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
4 <head>
5 <title>SliTaz Handbook - Serveur web LightTPD</title>
6 <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
7 <meta name="description" content="serveur wenhttpd LightTPD host hosting configuration perl python CGI auth" />
8 <meta name="expires" content="never" />
9 <meta name="modified" content="2007-12-03 12:30:00" />
10 <meta name="publisher" content="www.slitaz.org" />
11 <meta name="author" content="Christophe Lincoln"/>
12 <link rel="shortcut icon" href="favicon.ico" />
13 <link rel="stylesheet" type="text/css" href="book.css" />
14 </head>
15 <body bgcolor="#ffffff">
17 <!-- Header and quick navigation -->
18 <div id="header">
19 <div align="right" id="quicknav">
20 <a name="top"></a>
21 <a href="packages.html">Gestion des paquets</a> |
22 <a href="index.html">Table des matières</a>
23 </div>
24 <h1><font color="#3E1220">SliTaz Handbook</font></h1>
25 </div>
27 <!-- Content. -->
28 <div id="content">
29 <div class="content-right"></div>
31 <h2><font color="#DF8F06">Serveur web LightTPD</font></h2>
33 <ul>
34 <li><a href="web-server.html#about">A propos de LightTPD.</a></li>
35 <li><a href="web-server.html#var-www">/var/www</a> - Racine des documents du serveur.</li>
36 <li><a href="web-server.html#Public">~/Public</a> - Répertoire public des utilisateurs.</li>
37 <li><a href="web-server.html#config">lighttpd.conf</a> - Fichier de configuration de
38 LightTPD.</li>
39 <li><a href="web-server.html#start-stop-restart">Démarrer, arrêter, redémarrer le
40 serveur web.</a></li>
41 <li><a href="http://localhost/">http://localhost/</a></li>
42 <li><a href="http://localhost/server-status">http://localhost/server-status</a></li>
43 <li><a href="web-server.html#cgi-perl">Scripts CGI et Perl</a> - Configurer le serveur pour
44 le support des scripts CGI utilisant Perl.</li>
45 <li><a href="web-server.html#cgi-python">Scripts CGI et Python</a> - Scripts CGI utilisant
46 Python.</li>
47 <li><a href="web-server.html#auth">Authentification</a> - Protéger un ou des répertoires
48 avec nom d'utilisateur et mots de passes.</li>
49 </ul>
51 <a name="about"></a>
52 <h3><font color="#6c0023">A propos de LightTPD</font></h3>
53 <p>
54 Ce chapitre décrit l'utilisation et la configuration du serveur web LightTPD.
55 C'est un serveur HTTP sécurisé, rapide, flexible, et utilisant une petite
56 empreinte mémoire. Il permet une gestion intelligente de la charge CPU, et
57 support FastCGI, CGI, Auth, Output-Compression, réécriture d'URL, etc.
58 LightTPD est un serveur idéal pour héberger son propre site, sur une ancienne
59 machine, et donc à moindre frais.
60 </p>
61 <p>
62 Sur SliTaz le serveur web est automatiquement lancé au boot du système et il
63 est préconfiguré avec PHP. La racine des documents servis par défaut par le
64 serveur sont dans /var/www et contient une page <code>index.html</code>,
65 s'affichant par défaut, avec des images dans le répertoire images/. Site web
66 de LightTPD : <a href="http://www.lighttpd.net/">http://www.lighttpd.net/</a>
67 </p>
68 <a name="var-www"></a>
69 <h3><font color="#6c0023">/var/www - Racine des documents du serveur</font></h3>
70 <p>
71 Le répertoire /var/www est le répertoire racine des documents servis par
72 défaut. Vous y avez accès via l'url <a href="http://localhost/"
73 >http://localhost/</a>. Ce répertoire contient un page index.html s'affichant
74 automatiquement lors d'une requête. Si vous ne voulez héberger qu'un site,
75 vous pouvez mettre tous les document dans /var/www, et si vous voulez héberger
76 plusieurs sites, il faut créer des hôtes virtuels.
77 </p>
78 <a name="Public"></a>
79 <h3><font color="#6c0023">~/Public - Répertoire public des utilisateurs</font></h3>
80 <p>
81 SliTaz propose aux utilisateurs du système d'avoir un espace public pour y
82 mettre des documents, HTML en général. Ce répertoire se nomme Public et doit
83 se trouver à la racine de votre répertoire maison, tel que :
84 /home/hacker/Public. Pour créer ce répertoire vous pouvez utliser la commande :
85 </p>
86 <pre>
87 $ mkdir ~/Public
88 </pre>
89 <p>
90 Vous pouvez ensuite y avoir accès via l'url http://localhost/~user/. Exemple
91 pour l'utilisateur hacker :
92 <a href="http://localhost/~hacker/">http://localhost/~hacker/</a>. Vous pouvez
93 aussi utiliser le nom de machine ou l'adresse IP, pour vous y connecter depuis
94 une autre machine.
95 </p>
96 <a name="config"></a>
97 <h3><font color="#6c0023">/etc/lighttpd/lighttpd.conf - Fichier de configuration de LightTPD</font></h3>
98 <p>
99 Le fichier de configuration principal de LightTPD se trouve dans
100 /etc/lighttpd, et se nomme lighttpd.conf. Le fichier de configuration fourni
101 par SliTaz est auto documenté, il suffit de le parcourir. Vous trouverez
102 d'autres exemples sur le site web de LightTPD. Sur SliTaz vous touverez aussi
103 un fichier <code>vhosts.conf</code> destiné à la configuration d'éventuels
104 hôtes virtuels (pour hébérger plusieurs sites sur le même serveur).
105 </p>
106 <a name="start-stop-restart"></a>
107 <h3><font color="#6c0023">Démarrer, arrêter, redémarrer le serveur web</font></h3>
108 <p>
109 Par défaut SliTaz démarre le serveur au boot, pour qu'il ne soit pas lancé
110 automatiquement vous devez supprimer <code>lighttpd</code> de la variable
111 RUN_DAEMONS qui elle, se trouve dans le fichier de configuration du système
112 d'initialisation <code>/etc/rcS.conf</code>. Pour démarrer, arrêter,
113 redémarrer le serveur web vous pouvez utiliser la commande
114 <code>/etc/init.d/lighttpd [start|stop|restart]</code>. Exemple pour
115 redémarrer le serveur après modification du fichier de configuration :
116 </p>
117 <pre>
118 # /etc/init.d/lighttpd restart
119 </pre>
121 <a name="cgi-perl"></a>
122 <h3><font color="#6c0023">Scripts CGI et Perl</font></h3>
123 <p>
124 Pour configurer le serveur LightTPD afin qu'il trouve le chemin du binaire
125 <code>perl</code> et l'utiliser avec les scripts CGI/Perl, vous devez modifier
126 le fichier de configuration du serveur. Exemple en utilisant Geany :
127 </p>
128 <pre>
129 # geany /etc/lighttpd/lighttpd.conf &amp;
130 </pre>
131 <pre class="script">
132 # CGI module. You can install Perl and assign .pl and .cgi script
133 # to /usr/bin/perl
134 $HTTP["url"] =~ "/cgi-bin/" {
135 cgi.assign = (
136 ".sh" => "/bin/sh",
137 ".cgi" => "/usr/bin/perl",
138 ".pl" => "/usr/bin/perl"
139 )
140 }
141 </pre>
143 <a name="cgi-python"></a>
144 <h3><font color="#6c0023">Scripts CGI et Python</font></h3>
145 <p>
146 Pour configurer le serveur LightTPD afin qu'il trouve le chemin du binaire
147 <code>python</code> et l'utiliser avec les scripts CGI/Python, vous devez
148 avoir installé le paquet Python et modifier le fichier de configuration du
149 serveur. Pour installer Python et éditer le fichiers de configuration du
150 serveur web en utilisant Geany :
151 </p>
152 <pre>
153 # tazpkg get-install python
154 # geany /etc/lighttpd/lighttpd.conf &amp;
155 </pre>
156 <pre class="script">
157 # CGI module. You can install Perl and assign .pl and .cgi script
158 # to /usr/bin/perl
159 $HTTP["url"] =~ "/cgi-bin/" {
160 cgi.assign = (
161 ".sh" => "/bin/sh",
162 ".cgi" => "/usr/bin/python,
163 ".py" => "/usr/bin/python
164 )
165 }
166 </pre>
167 <p>
168 Pour que les modifications soient prisent en compte, et utiliser vos premier
169 scripts CGI/Python sur SliTaz, vous devez encore redémarrer LightTPD :
170 </p>
171 <pre>
172 # /etc/init.d/lighttpd restart
173 </pre>
175 <a name="auth"></a>
176 <h3><font color="#6c0023">Authentification - Protéger des répertoires</font></h3>
177 <p>
178 LightTPD fournit un module d'authentification permettant par exemple, de
179 protéger un répertoire. Le serveur propose plusieurs méthodes d'authentification,
180 pour commencer nous allons utiliser la méthode basique sans cryptage des mots
181 de passes. Afin de pouvoir charger le module <code>mod_auth</code>, vous devez
182 avoir installer le paquets lighttpd-modules (<code>tazpkg get-install
183 lighttpd-modules</code>), une fois le paquet installé il faut ajouter
184 <code>mod_auth</code> à la liste des modules :
185 </p>
186 <pre class="script">
187 # Modules to load.
188 # See /usr/lib/lighttpd for all available modules.
189 #
190 server.modules = (
191 "mod_access",
192 "mod_auth",
193 "...",
194 )
195 </pre>
196 <p>
197 Maintenant vous pouvez configurer le modules en spécifiant le niveau de debug
198 la méthode (<code>plain</code>) et le chemin vers le fichier qui contiendra la
199 liste des noms:pass autorisés à voir le ou les répertoires protégés. Il faut
200 aussi définir le ou les répertoires qui demandent authentification. Dans cet
201 exemple nous protégeons le répertoire <code>admin/</code> et autorisons son
202 accès à l'utililisateur hacker (<code>user=hacker</code>) :
203 </p>
204 <pre class="script">
205 # Authentification for protected directory.
206 auth.debug = 2
207 auth.backend = "plain"
208 auth.backend.plain.userfile = "/etc/lighttpd/plain.passwd"
209 auth.require = ( "/admin/" =>
210 (
211 "method" => "basic",
212 "realm" => "Password protected area",
213 "require" => "user=hacker"
214 )
215 )
216 </pre>
217 <p>
218 Pour finir il suffit de créer le fichier des mots de passes, d'ajouter un
219 utilisateur et de redémarrer le serveur pour tester. La syntaxe pour les fichiers
220 basiques est <code>nom:pass</code>. Vous pouvez créer et ajouter un utilisateur
221 à ce fichier avec la commande <code>echo</code> ou l'éditer avec votre éditeur
222 de texte préféré. Pour un utilisateur:motdepasse <code>hacker:root</code> dans
223 un fichier de mots de passes <code>/etc/lighttpd/plain.passwd</code> :
224 </p>
225 <pre>
226 # echo "hacker:root" > /etc/lighttpd/plain.passwd
227 Ou/et :
228 # nano /etc/lighttpd/plain.passwd
229 </pre>
230 <p>
231 Pour redémarrer le serveur et ensuite tester avec une adresse du type
232 http://localhost/admin/ :
233 </p>
234 <pre>
235 # /etc/init.d/lighttpd restart
236 </pre>
238 <!-- End of content -->
239 </div>
241 <!-- Footer. -->
242 <div id="footer">
243 <div class="footer-right"></div>
244 <a href="web-server.html#top">Haut de la page</a> |
245 <a href="index.html">Table des matières</a>
246 </div>
248 <div id="copy">
249 Copyright &copy; <span class="year"></span> <a href="http://www.slitaz.org/">SliTaz</a> -
250 <a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>;<br />
251 Documentation publiées sous
252 <a href="http://www.gnu.org/copyleft/fdl.html">GNU Free Documentation License</a>
253 et codée en <a href="http://validator.w3.org/">xHTML 1.0 valide</a>.
254 </div>
256 </body>
257 </html>