mod_imap.c
, et est compilé par défaut. Il gère les fichiers de type .map
, en remplaçant les fonctionnalités du programme CGI imagemap
. Tout répertoire ou type de document configuré pour utiliser le gestionnaire (handler)
imap-file
(soit via une déclaration AddHandler
ou SetHandler
) sera traité par ce module.
.map
au titre de fichiers "imagemap" :
AddHandler imap-file map
Notez que l'écriture suivante est toujours reconnue :
AddType application/x-httpd-imap map
Cependant, nous essayons d'éliminer le principe des "types MIME magiques" et cette méthode est aujourd'hui déconseillée.
base
.
imagemap.conf
plus nécessaire.
{none, formatted, semi-formatted, unformatted}
La directive ImapMenu détermine l'action exécutée si le fichier "imagemap" est requis sans coordonnées valides.
none
none
, aucun menu n'est généré, et l'action par default
est exécutée.
formatted
formatted
est le menu le plus simple. Les commentaires du fichier "imagemap" sont ignorés. Une en-tête de premier niveau est affichée, puis une règle horizontale, puis chacun des liens sur une ligne séparée. Le menu à une apparence finie, proche de celle obtenue par un indexage de répertoire.
semiformatted
semiformatted
, les commentaires sont affichés, à la place ou ils interviennent dans le fichier "imagemap". Les lignes vides sont transformées en balises HTML formatted
.
unformatted
{error, nocontent,
map, referer, URL}
La directive ImapDefault définit l'action default
par défaut utilisée pour les fichiers "imagemap". Sa valeur est surchargée par une directive default
à l'intérieur du fichier "imagemap" lui-même. Si aucune spécification du défaut n'est faite, l'action par défaut (le défaut du défaut !)
est nocontent
, ce qui signifie qu'une réponse de code 204 No Content
sera renvoyée au client. Dans ce cas, le client devrait continuer d'afficher la page originale.
{map, referer, URL}
La directive ImapBase définit le code base
par défaut utilisé dans les fichiers "imagemap". Sa valeur est surchargée par une directive base
dans le fichier "imagemap" lui-même. Si aucune directive de ce type n'est spécifiée, la base
par défaut (encore le défaut du défaut !) sera http://votre.serveur/
.
La directive est l'une parmidirective valeur [x,y ...]
directive valeur "Texte menu" [x,y ...]
directive valeur x,y ... "Texte menu"
base
, default
,
poly
, circle
, rect
, ou
point
. La valeur est une URL absolue ou relative, ou encore l'une des valeurs spéciales listées ci-après. Les coordonnées sont des paires x,y
séparées par des espaces. Le texte entre guillemets sera utilisé comme texte de l'item de menu lorsqu'un menu "imagemap" est généré. Les lignes débutant par un caractère '#' sont traitées comme des commentaires.
base
<BASE href="valeur">
. Les URL relatives trouvées dans le fichier "imagemap" seront prises relativement à cette valeur.
La directive base
surcharge une directive ImapBase inscrite dans un fichier .htaccess ou dans les fichiers de configuration du serveur. En l'absence d'une directive ImapBase, la base
est par défaut http://votre.serveur/
. base_uri
est synonyme de base
. Notez que le slash final mentionné dans l'URL est significatif.
default
poly
, circle
ou rect
définie, et aucune directive point
n'est définie. Par défaut, Default prend la valeur nocontent
en l'absence de toute inscription d'une directive ImapDefault, ce qui provoque l'envoi d'une réponse de code 204 No
Content
au client. Le client continuera de voir la page originale.
poly
circle
rect
point
default
ne sera pas considérée si une directive point
est mentionnée et que des coordonnées valides (dans l'image dans ce cas) sont données.
RdT : Notez que dans ce cas, le point unique défini est effectivement le plus proche de tous les autres points de l'image !
base
.base
elle-même ne sera pas résolue par rapport à la valeur courante. Pourtant, une expression base mailto:
fonctionnera correctement.
map
menu
map
.
referer
http://votre.serveur/
si aucun champ Referer:
n'était présent dans l'en-tête.
nocontent
204 No Content
,
pour indiquer au client de conserver la même page affichée. Valide pour toutes les directives sauf base
.
error
500 Server Error
. Valide pour toutes les directive sauf base
, mais somme toute assez maladroite dans un autre contexte que default
.
0,0 200,200
0,0
, alors on considère qu'aucune coordonnée n'a été sélectionnée.
"Texte menu"
<a href="http://foo.com/">Texte menu</a>
<a href="http://foo.com/">http://foo.com</a>
#Les commentaires sont affichés dans un menu 'unformatted' ou 'semiformatted'.
#et peuvent contenir des balises HTML. <hr>
base referer
poly map "J'peux avoir un menu, siou plait?" 0,0 0,10 10,10 10,0
rect .. 0,0 77,27 "le répertoire du Referer"
circle http://www.inetnebr.com/lincoln/feedback/ 195,0 305,27
rect another_file "dans le répertoire du Referer" 306,0 419,27
point http://www.zyzzyva.com/ 100,100
point http://www.tripod.com/ 200,200
rect mailto:nate@tripod.com 100,150 200,0 "Ca plante ?"
<A HREF="/maps/imagmap1.map">
<IMG ISMAP SRC="/images/imagemap1.gif">
</A>