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