blob: 0c7843d9f62c6e633abd01b14b66cc7d61865175 [file]
<!DOCTYPE html SYSTEM "about:legacy-compat">
<html lang="fr"><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta content="width=device-width, initial-scale=1" name="viewport">
<!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>apxs - Utilitaire pour les extensions d'Apache - Serveur HTTP Apache Version 2.5</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet">
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size">
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css"><link rel="stylesheet" type="text/css" href="../style/css/prettify.css">
<script src="../style/scripts/prettify.min.js">
</script>
<link href="../images/favicon.png" rel="shortcut icon"></head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a> | <a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2">Signaler un bug</a></p>
<p class="apache">Serveur HTTP Apache Version 2.5</p>
<img alt="" src="../images/feather.png"></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif"></a></div>
<div id="path">
<a href="https://www.apache.org/">Apache</a> &gt; <a href="https://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="https://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.5</a> &gt; <a href="./">Programmes</a></div><div id="page-content"><div id="preamble"><h1>apxs - Utilitaire pour les extensions d'Apache</h1>
<button aria-label="Toggle language list" class="lang-toggle"><svg xmlns="http://www.w3.org/2000/svg" stroke-width="2" stroke="currentColor" fill="none" viewBox="0 0 24 24" height="16" width="16"><circle r="10" cy="12" cx="12"/><line y2="12" x2="22" y1="12" x1="2"/><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"/></svg></button>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/programs/apxs.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/programs/apxs.html" title="Fran&ccedil;ais">&nbsp;fr&nbsp;</a> |
<a href="../ko/programs/apxs.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="../tr/programs/apxs.html" hreflang="tr" rel="alternate" title="T&uuml;rk&ccedil;e">&nbsp;tr&nbsp;</a></p>
</div>
<p><code class="program"><a href="../programs/apxs.html">apxs</a></code> est un utilitaire permettant de compiler et
d'installer des modules en tant qu'extensions du serveur HTTP
Apache. A cet effet, un objet dynamique partag&eacute; (DSO) est compil&eacute; &agrave;
partir d'un ou plusieurs <var>fichiers</var> sources ou objets et
peut &ecirc;tre charg&eacute; pendant l'ex&eacute;cution du serveur Apache via la
directive <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> du
module <code class="module"><a href="../mod/mod_so.html">mod_so</a></code>.</p>
<p>Pour pouvoir utiliser ce m&eacute;canisme d'extensions, votre
plate-forme doit supporter la fonctionnalit&eacute; DSO, et votre binaire
<code class="program"><a href="../programs/httpd.html">httpd</a></code> Apache doit &ecirc;tre compil&eacute; avec le module
<code class="module"><a href="../mod/mod_so.html">mod_so</a></code>. Si ce n'est pas le cas, l'utilitaire
<code class="program"><a href="../programs/apxs.html">apxs</a></code> vous le signalera. Vous pouvez aussi v&eacute;rifier
vous-m&ecirc;me ces pr&eacute;requis en ex&eacute;cutant manuellement la commande :</p>
<div class="example"><pre class="prettyprint lang-sh">$ httpd -l</pre>
</div>
<p>Le module <code class="module"><a href="../mod/mod_so.html">mod_so</a></code> doit faire partie de la liste
des modules affich&eacute;e. Si ces pr&eacute;requis sont pr&eacute;sents, vous pouvez
facilement &eacute;tendre les fonctionnalit&eacute;s de votre serveur Apache en
installant vos propres modules &agrave; l'aide de l'utilitaire
<code class="program"><a href="../programs/apxs.html">apxs</a></code>, via le m&eacute;canisme DSO :</p>
<div class="example"><pre class="prettyprint lang-sh">$ apxs -i -a -c mod_foo.c
gcc -fpic -DSHARED_MODULE -I/path/to/apache/include -c mod_foo.c
ld -Bshareable -o mod_foo.so mod_foo.o
cp mod_foo.so /path/to/apache/modules/mod_foo.so
chmod 755 /path/to/apache/modules/mod_foo.so
[activating module `foo' in /path/to/apache/etc/httpd.conf]
$ apachectl restart
/path/to/apache/sbin/apachectl restart: httpd not running, trying to start
[Tue Mar 31 11:27:55 1998] [debug] mod_so.c(303): loaded module foo_module
/path/to/apache/sbin/apachectl restart: httpd started
$ _</pre>
</div>
<p>Les arguments <var>fichiers</var> peuvent correspondre &agrave; un
fichier source C (.c), un fichier objet (.o) ou m&ecirc;me une archive de
biblioth&egrave;ques (.a). L'utilitaire <code class="program"><a href="../programs/apxs.html">apxs</a></code> reconna&icirc;t
automatiquement ces extensions et utilise automatiquement les
fichiers source C pour la compilation, et les fichiers objets et
archives pour l'&eacute;dition de liens. Cependant, si vous utilisez des
fichiers objets pr&eacute;compil&eacute;s, assurez-vous que leur code soit
ind&eacute;pendant de la position (PIC), afin de pouvoir les utiliser avec
un objet partag&eacute; charg&eacute; dynamiquement. Avec GCC, par exemple, il
vous suffit de toujours utiliser l'option de compilation
<code>-fpic</code>. Pour les autres compilateurs C, consultez leur
page de manuel, ou v&eacute;rifiez les drapeaux qu'<code class="program"><a href="../programs/apxs.html">apxs</a></code>
utilise pour compiler les fichiers objets.</p>
<p>Pour plus de d&eacute;tails &agrave; propos du support DSO dans Apache, lire la
documentation du module <code class="module"><a href="../mod/mod_so.html">mod_so</a></code>, ou m&ecirc;me, consultez
le fichier source <code>src/modules/standard/mod_so.c</code>.</p>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif"> <a href="#synopsis">Syntaxe</a></li>
<li><img alt="" src="../images/down.gif"> <a href="#options">Options</a></li>
<li><img alt="" src="../images/down.gif"> <a href="#examples">Exemples</a></li>
</ul><h3>Voir aussi</h3><ul class="seealso"><li><code class="program"><a href="../programs/apachectl.html">apachectl</a></code></li><li><code class="program"><a href="../programs/httpd.html">httpd</a></code></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="section">
<h2 id="synopsis">Syntaxe <a title="Lien permanent" href="#synopsis" class="permalink">&para;</a></h2>
<p><code><strong>apxs</strong> -<strong>g</strong>
[ -<strong>S</strong> <var>nom</var>=<var>valeur</var> ]
-<strong>n</strong> <var>nom-module</var></code></p>
<p><code><strong>apxs</strong> -<strong>q</strong>
[ -<strong>v</strong> ]
[ -<strong>S</strong> <var>nom</var>=<var>valeur</var> ]
<var>requ&ecirc;te</var> ...</code></p>
<p><code><strong>apxs</strong> -<strong>c</strong>
[ -<strong>S</strong> <var>nom</var>=<var>valeur</var> ]
[ -<strong>o</strong> <var>fichier-dso</var> ]
[ -<strong>I</strong> <var>r&eacute;pertoire-inc</var> ]
[ -<strong>D</strong> <var>nom</var>=<var>valeur</var> ]
[ -<strong>L</strong> <var>r&eacute;pertoire-lib</var> ]
[ -<strong>l</strong> <var>nom-biblioth&egrave;que</var> ]
[ -<strong>Wc,</strong><var>options-compilation</var> ]
[ -<strong>Wl,</strong><var>options-edition-liens</var> ]
<var>fichiers</var> ...</code></p>
<p><code><strong>apxs</strong> -<strong>i</strong>
[ -<strong>S</strong> <var>nom</var>=<var>valeur</var> ]
[ -<strong>n</strong> <var>nom-module</var> ]
[ -<strong>a</strong> ]
[ -<strong>A</strong> ]
<var>fichier-dso</var> ...</code></p>
<p><code><strong>apxs</strong> -<strong>e</strong>
[ -<strong>S</strong> <var>nom</var>=<var>valeur</var> ]
[ -<strong>n</strong> <var>nom-module</var> ]
[ -<strong>a</strong> ]
[ -<strong>A</strong> ]
<var>fichier-dso</var> ...</code></p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="section">
<h2 id="options">Options <a title="Lien permanent" href="#options" class="permalink">&para;</a></h2>
<h3 id="options.common">Options courantes</h3>
<dl>
<dt><code>-n <var>nom-module</var></code></dt>
<dd>D&eacute;finit explicitement le nom du module pour les options
<code>-i</code> (install) et <code>-g</code> (g&eacute;n&eacute;ration de
mod&egrave;les). Utilisez cette option pour sp&eacute;cifier de mani&egrave;re
explicite le nom du module. Pour l'option <code>-g</code>, cette
option est n&eacute;cessaire ; pour l'option <code>-i</code>,
l'utilitaire <code class="program"><a href="../programs/apxs.html">apxs</a></code> tente de d&eacute;terminer le nom du
module &agrave; partir des sources, ou (&agrave; d&eacute;faut) en le d&eacute;duisant du nom
de fichier.</dd>
</dl>
<h3 id="options.query">Options de requ&ecirc;te</h3>
<dl>
<dt><code>-q</code></dt>
<dd>Effectue une requ&ecirc;te &agrave; propos des variables et de
l'environnement utilis&eacute;s pour compiler <code>httpd</code>.
Lorsqu'elle est invoqu&eacute;e sans param&egrave;tre <var>requ&ecirc;te</var>, cette
option affiche toutes les variables connues, ainsi que leurs
valeurs. Le param&egrave;tre optionnel <code>-v</code> formate la liste
affich&eacute;e.
<p>Utilisez cette option pour d&eacute;terminer manuellement les options
utilis&eacute;es pour compiler le binaire <code>httpd</code> qui chargera
votre module. Ajoutez par exemple</p>
<div class="example"><pre class="prettyprint lang-sh">INC=-I`apxs -q INCLUDEDIR`</pre>
</div>
<p>dans vos propres Makefiles si vous devez acc&eacute;der manuellement
aux fichiers d'en-t&ecirc;tes C d'Apache.</p></dd>
</dl>
<h3 id="options.conf">Options de configuration</h3>
<dl>
<dt><code>-S <var>nom</var>=<var>valeur</var></code></dt>
<dd>Cette option permet de modifier la configuration d'apxs
d&eacute;crite ci-dessus.</dd>
</dl>
<h3 id="options.template">Option de g&eacute;n&eacute;ration des
mod&egrave;les</h3>
<dl>
<dt><code>-g</code></dt>
<dd>Cette option permet de g&eacute;n&eacute;rer un sous-r&eacute;pertoire
<var>nom</var> (voir option <code>-n</code>) contenant deux
fichiers : le premier fichier est un exemple de fichier source de
module nomm&eacute; <code>mod_<var>nom</var>.c</code> que l'on peut
utiliser comme mod&egrave;le pour cr&eacute;er ses propres modules, ou comme
point de d&eacute;part pour se familiariser avec le m&eacute;canisme apxs ; le
second fichier est le <code>Makefile</code> correspondant
facilitant la compilation et l'installation de ce module.</dd>
</dl>
<h3 id="options.dso">Options de compilation DSO</h3>
<dl>
<dt><code>-c</code></dt>
<dd>Cette option indique une op&eacute;ration de compilation. Tout
d'abord, les fichiers sources (.c) sp&eacute;cifi&eacute;s par
<var>fichiers</var> sont compil&eacute;s en fichiers objets
correspondants (.o), puis un objet dynamiquement partag&eacute;
<var>fichier-dso</var> est compil&eacute; via une &eacute;dition de liens de ces
fichiers objets avec les autres fichiers objets (.o and .a)
sp&eacute;cifi&eacute;s par <var>fichiers</var>. Si l'option <code>-o</code>
n'est pas sp&eacute;cifi&eacute;e, le nom du fichier r&eacute;sultant est d&eacute;duit du
premier nom de fichier sp&eacute;cifi&eacute; par <var>fichiers</var>, et ainsi
prend en g&eacute;n&eacute;ral pour valeur par d&eacute;faut
<code>mod_<var>nom</var>.so</code>.</dd>
<dt><code>-o <var>fichier-dso</var></code></dt>
<dd>Sp&eacute;cifie de mani&egrave;re explicite le nom de fichier de l'objet
partag&eacute; dynamiquement cr&eacute;&eacute;. Sans cette option, et si le nom ne
peut pas &ecirc;tre d&eacute;duit de la liste <var>fichiers</var>, c'est le nom
par d&eacute;faut <code>mod_unknown.so</code> qui sera utilis&eacute;.</dd>
<dt><code>-D <var>nom</var>=<var>valeur</var></code></dt>
<dd>Cette option est transmise directement &agrave; la commande de
compilation. Vous pouvez l'utiliser pour ajouter vos propres
d&eacute;finitions au processus de compilation. </dd>
<dt><code>-I <var>r&eacute;pertoire-inc</var></code></dt>
<dd>Cette option est transmise directement &agrave; la commande de
compilation. Vous pouvez l'utiliser pour ajouter vos propres
chemins de recherche des r&eacute;pertoires <code>include</code> au processus de
compilation.</dd>
<dt><code>-L <var>r&eacute;pertoire-lib</var></code></dt>
<dd>Cette option est transmise directement &agrave; la commande d'&eacute;dition
de liens. Vous pouvez l'utiliser pour ajouter vos propres
chemins de recherche des r&eacute;pertoires de biblioth&egrave;ques au processus
de compilation.</dd>
<dt><code>-l <var>nom-biblioth&egrave;que</var></code></dt>
<dd>Cette option est transmise directement &agrave; la commande d'&eacute;dition
de liens. Vous pouvez l'utiliser pour ajouter vos propres
biblioth&egrave;ques &agrave; rechercher au processus de compilation.</dd>
<dt><code>-Wc,<var>options-compilation</var></code></dt>
<dd>Cette option transmet les <var>options-compilation</var> en
tant qu'options suppl&eacute;mentaires &agrave; la commande <code>libtool
--mode=compile</code>. Vous pouvez l'utiliser pour ajouter des
options locales sp&eacute;cifiques au compilateur.</dd>
<dt><code>-Wl,<var>options-edition-liens</var></code></dt>
<dd>Cette option transmet les <var>options-edition-liens</var> en
tant qu'options suppl&eacute;mentaires &agrave; la commande <code>libtool
--mode=link</code>. Vous pouvez l'utiliser pour ajouter des
options locales sp&eacute;cifiques &agrave; l'&eacute;diteur de liens.</dd>
<dt><code>-p</code></dt>
<dd>Avec cette option, apxs effectue l'&eacute;dition de liens avec les
biblioth&egrave;ques apr/apr-util. Elle permet de compiler les programmes
helper qui utilisent les biblioth&egrave;ques apr/apr-util.</dd>
</dl>
<h3 id="options.dsoinstall">Options d'installation et de configuration DSO</h3>
<dl>
<dt><code>-i</code></dt>
<dd>Cette option indique une op&eacute;ration d'installation et installe
un ou plusieurs objets dynamiquement partag&eacute;s dans le r&eacute;pertoire
<var>modules</var> du serveur.</dd>
<dt><code>-a</code></dt>
<dd>Cette option active le module en ajoutant automatiquement une
directive <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code>
correspondante au fichier de configuration d'Apache
<code>httpd.conf</code>, ou en l'activant s'il existe d&eacute;j&agrave;.</dd>
<dt><code>-A</code></dt>
<dd>Identique &agrave; l'option <code>-a</code>, &agrave; la diff&eacute;rence que la
directive <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> cr&eacute;&eacute;e
est pr&eacute;fix&eacute;e par un caract&egrave;re di&egrave;se (<code>#</code>) ; le module
est ainsi pr&eacute;par&eacute; pour une activation ult&eacute;rieure, mais est
d&eacute;sactiv&eacute; dans un premier temps.</dd>
<dt><code>-e</code></dt>
<dd>Cette option indique une op&eacute;ration d'&eacute;dition de liens et peut
&ecirc;tre utilis&eacute;e avec les options <code>-a</code> et <code>-A</code>
de la m&ecirc;me mani&egrave;re qu'au cours de l'op&eacute;ration d'installation pour
&eacute;diter le fichier de configuration d'Apache
<code>httpd.conf</code>, sans toutefois installer le module.</dd>
</dl>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="section">
<h2 id="examples">Exemples <a title="Lien permanent" href="#examples" class="permalink">&para;</a></h2>
<p>Supposons que vous disposiez d'un module Apache nomm&eacute;
<code>mod_foo.c</code> et destin&eacute; &agrave; &eacute;tendre les fonctionnalit&eacute;s du
serveur. Pour ce faire, vous devez tout d'abord compiler le fichier
source C en un objet partag&eacute; pouvant &ecirc;tre charg&eacute; dans le serveur
Apache &agrave; l'ex&eacute;cution, via la commande suivante :</p>
<div class="example"><pre class="prettyprint lang-sh">$ apxs -c mod_foo.c
/path/to/libtool --mode=compile gcc ... -c mod_foo.c
/path/to/libtool --mode=link gcc ... -o mod_foo.la mod_foo.slo
$ _</pre>
</div>
<p>Vous devez ensuite v&eacute;rifier la configuration d'Apache en vous
assurant qu'une directive <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> est bien pr&eacute;sente pour
charger cet objet partag&eacute;. Pour simplifier cette &eacute;tape,
<code class="program"><a href="../programs/apxs.html">apxs</a></code> propose une m&eacute;thode automatique d'installation de
l'objet partag&eacute; dans son r&eacute;pertoire "modules", et de mise &agrave; jour du
fichier <code>httpd.conf</code> en cons&eacute;quence. Pour b&eacute;n&eacute;ficier de
cette automatisation, utilisez la commande suivante :</p>
<div class="example"><pre class="prettyprint lang-sh">$ apxs -i -a mod_foo.la
/path/to/instdso.sh mod_foo.la /path/to/apache/modules
/path/to/libtool --mode=install cp mod_foo.la /path/to/apache/modules
...
chmod 755 /path/to/apache/modules/mod_foo.so
[activating module `foo' in /path/to/apache/conf/httpd.conf]
$ _</pre>
</div>
<p>Une ligne contenant</p>
<div class="example"><pre class="prettyprint lang-config">LoadModule foo_module modules/mod_foo.so</pre>
</div>
<p>est alors ajout&eacute;e au fichier de configuration si ce n'est pas
d&eacute;j&agrave; fait. Si vous voulez que le module soit d&eacute;sactiv&eacute; par d&eacute;faut,
utilisez l'option <code>-A</code> comme suit :</p>
<div class="example"><pre class="prettyprint lang-sh">$ apxs -i -A mod_foo.c</pre>
</div>
<p>Pour un test rapide du m&eacute;canisme apxs, vous pouvez cr&eacute;er un
exemple de mod&egrave;le de module Apache, ainsi que le Makefile
correspondant via :</p>
<div class="example"><pre class="prettyprint lang-sh">$ apxs -g -n foo
Creating [DIR] foo
Creating [FILE] foo/Makefile
Creating [FILE] foo/modules.mk
Creating [FILE] foo/mod_foo.c
Creating [FILE] foo/.deps
$ _</pre>
</div>
<p>Vous pouvez ensuite compiler imm&eacute;diatement ce module exemple en
objet partag&eacute; et le charger dans le serveur Apache :</p>
<div class="example"><pre class="prettyprint lang-sh">$ cd foo
$ make all reload
apxs -c mod_foo.c
/path/to/libtool --mode=compile gcc ... -c mod_foo.c
/path/to/libtool --mode=link gcc ... -o mod_foo.la mod_foo.slo
apxs -i -a -n "foo" mod_foo.la
/path/to/instdso.sh mod_foo.la /path/to/apache/modules
/path/to/libtool --mode=install cp mod_foo.la /path/to/apache/modules
...
chmod 755 /path/to/apache/modules/mod_foo.so
[activating module `foo' in /path/to/apache/conf/httpd.conf]
apachectl restart
/path/to/apache/sbin/apachectl restart: httpd not running, trying to start
[Tue Mar 31 11:27:55 1998] [debug] mod_so.c(303): loaded module foo_module
/path/to/apache/sbin/apachectl restart: httpd started
$ _</pre>
</div>
</div></div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/programs/apxs.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/programs/apxs.html" title="Fran&ccedil;ais">&nbsp;fr&nbsp;</a> |
<a href="../ko/programs/apxs.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="../tr/programs/apxs.html" hreflang="tr" rel="alternate" title="T&uuml;rk&ccedil;e">&nbsp;tr&nbsp;</a></p>
</div><div id="footer">
<p class="apache">Copyright 2026 The Apache Software Foundation.<br>Autoris&eacute; sous <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a> | <a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2">Signaler un bug</a></p></div><script><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
var langToggle = document.querySelector('.lang-toggle');
var topLang = document.querySelector('.toplang');
if (langToggle && topLang) {
langToggle.addEventListener('click', function() { topLang.classList.toggle('open'); });
}
var qv = document.getElementById('quickview');
if (qv) {
document.body.appendChild(qv);
var qvBtn = document.createElement('button');
qvBtn.className = 'qv-toggle';
qvBtn.setAttribute('aria-label', 'Toggle page navigation');
qvBtn.innerHTML = '&#9776;';
document.body.appendChild(qvBtn);
qvBtn.addEventListener('click', function() {
var isOpen = qv.classList.toggle('open');
if (isOpen) {
qv.style.top = window.scrollY + 10 + 'px';
}
});
window.addEventListener('scroll', function() { qv.classList.remove('open'); });
}
//--><!]]></script>
</body></html>