Nous vérifions complètement chaque écrit sur notre site Web dans le but de vous montrer des informations à tout moment avec la plus grande précision et à jour.
Le site configure
configure l'arbre des sources pour la compilation et l'installation du serveur HTTP Apache sur votre plate-forme particulière. Diverses options permettent la compilation d'un serveur correspondant à vos exigences personnelles.
Ce script, inclus dans le répertoire racine de la distribution des sources, est destiné à la compilation sur les systèmes Unix et de type Unix uniquement. Pour les autres plateformes, consultez la documentation de la plateforme.
Synopsis
Vous devez appeler le script configure
script à partir du répertoire racine de la distribution.
./configure [OPTION]... [VAR=VALUE]...
Pour affecter des variables d'environnement (par exemple CC
, CFLAGS
...), spécifiez-les comme VAR=VALUE
. Voir ci-dessous pour la description de certaines des variables utiles.
Options
- Options de configuration
- Répertoires d'installation
- Types de systèmes
- Caractéristiques optionnelles
- Options pour les programmes d'assistance
Options de configuration
Les options suivantes influencent le comportement de configure
lui-même.
-C
--config-cache
- Il s'agit d'un alias pour
--cache-file=config.cache
--cache-file=FILE
- Les résultats du test seront mis en cache dans le fichier FICHIER. Cette option est désactivée par défaut.
-h
--help [short|recursive]
- Affiche l'aide et quitte. Avec l'argument
short
seules les options spécifiques à ce paquet seront affichées. L'argumentrecursive
affiche l'aide succincte de tous les paquets inclus. -n
--no-create
- Le site
configure
est exécuté normalement mais ne crée pas de fichiers de sortie. Ceci est utile pour vérifier les résultats des tests avant de générer des makefiles pour la compilation. -q
--quiet
- Ne pas imprimer
checking ...
messages pendant le processus de configuration. --srcdir=DIR
- Définit le répertoire DIR pour être le répertoire du fichier source. La valeur par défaut est le répertoire où
configure
est situé, ou le répertoire parent. --silent
- Identique à
--quiet
- -V
- --version
- Afficher les informations relatives au copyright et quitter.
Répertoires d'installation
Ces options définissent le répertoire d'installation. L'arborescence d'installation dépend de la mise en page sélectionnée.
--prefix=PREFIX
- Installer les fichiers indépendants de l'architecture dans PREFIX. Par défaut, le répertoire d'installation est défini sur
/usr/local/apache2
. --exec-prefix=EPREFIX
- Installez les fichiers dépendant de l'architecture dans EPREFIX. Par défaut, le répertoire d'installation est défini dans le répertoire PREFIX répertoire.
Par défaut, make install
installera tous les fichiers dans /usr/local/apache2/bin
, /usr/local/apache2/lib
etc. Vous pouvez spécifier un préfixe d'installation autre que /usr/local/apache2
en utilisant --prefix
par exemple --prefix=$HOME
.
Définir une disposition de répertoire
--enable-layout=LAYOUT
- Configurer le code source et les scripts de construction pour supposer une arborescence d'installation basée sur la disposition. LAYOUT. Cela vous permet de spécifier séparément les emplacements de chaque type de fichier dans l'installation du serveur HTTP Apache. L'adresse
config.layout
contient plusieurs exemples de configurations, et vous pouvez également créer votre propre configuration personnalisée en suivant les exemples. Les différentes configurations de ce fichier sont regroupées dans le fichier
sections et désignées par leur nom comme dans... FOO
. La mise en page par défaut estApache
.
Réglage fin des répertoires d'installation
Pour un meilleur contrôle des répertoires d'installation, utilisez les options ci-dessous. Veuillez noter que les valeurs par défaut des répertoires sont définies par . autoconf
et sont écrasés par le paramètre de mise en page correspondant.
--bindir=DIR
- Installez les exécutables de l'utilisateur dans DIR. Les exécutables utilisateur sont des programmes de support comme
htpasswd
,dbmmanage
, etc. qui sont utiles aux administrateurs du site. Par défaut DIR est réglé surEPREFIX/bin
. --datadir=DIR
- Installez les données indépendantes de l'architecture en lecture seule dans le fichier DIR. Par défaut
datadir
est réglé surPREFIX/share
. Cette option est offerte parautoconf
et est actuellement inutilisée. --includedir=DIR
- Installer les fichiers d'en-tête C dans DIR. Par défaut
includedir
est réglé surEPREFIX/include
. --infodir=DIR
- Installez la documentation info dans DIR. Par défaut
infodir
est réglé surPREFIX/info
. Cette option est actuellement inutilisée. --libdir=DIR
- Installer les bibliothèques de code objet dans DIR. Par défaut
libdir
est réglé surEPREFIX/lib
. --libexecdir=DIR
- Installez les exécutables du programme (c'est-à-dire les modules partagés) dans le répertoire DIR. Par défaut
libexecdir
est réglé surEPREFIX/modules
. --localstatedir=DIR
- Installer les données modifiables d'une seule machine dans DIR. Par défaut
localstatedir
est réglé surPREFIX/var
. Cette option est offerte parautoconf
et actuellement inutilisée. --mandir=DIR
- Installez la documentation man dans DIR. Par défaut
mandir
est réglé surEPREFIX/man
. --oldincludedir=DIR
- Installer les fichiers d'en-tête C pour les non-gcc en DIR. Par défaut
oldincludedir
est réglé sur/usr/include
. Cette option est offerte parautoconf
et actuellement inutilisée. --sbindir=DIR
- Installez les exécutables de l'administrateur système dans DIR. Ce sont des programmes de serveur comme
httpd
,apachectl
,suexec
etc. qui sont nécessaires pour faire fonctionner le serveur HTTP Apache. Par défautsbindir
est réglé surEPREFIX/sbin
. --sharedstatedir=DIR
- Installer les données modifiables indépendantes de l'architecture en DIR. Par défaut
sharedstatedir
est réglé surPREFIX/com
. Cette option est offerte parautoconf
et actuellement inutilisée. --sysconfdir=DIR
- Installer des données en lecture seule sur une seule machine comme les fichiers de configuration du serveur.
httpd.conf
,mime.types
etc. dans DIR. Par défautsysconfdir
est réglé surPREFIX/conf
.
Types de système
Ces options sont utilisées pour effectuer une compilation croisée du serveur HTTP Apache afin de l'exécuter sur un autre système. Dans les cas normaux, lors de la construction et de l'exécution du serveur sur le même système, ces options ne sont pas utilisées.
--build=BUILD
- Définit le type de système du système sur lequel les outils sont construits. Par défaut, il s'agit du résultat du script.
config.guess
. --host=HOST
- Définit le type de système du système sur lequel le serveur sera exécuté. HOST par défaut BUILD.
--target=TARGET
- Configurer pour la construction de compilateurs pour le type de système. TARGET. La valeur par défaut est HÔTE. Cette option est offerte par
autoconf
et n'est pas nécessaire pour le serveur HTTP Apache.
Caractéristiques optionnelles
Ces options sont utilisées pour affiner les fonctionnalités que votre serveur HTTP aura.
Syntaxe générale
En général, vous pouvez utiliser la syntaxe suivante pour activer ou désactiver une fonctionnalité :
--disable-FEATURE
- Ne pas inclure FEATURE. C'est la même chose que
--enable-FEATURE=no
. --enable-FEATURE[=ARG]
- Inclure FEATURE. La valeur par défaut de ARG est
yes
. --enable-MODULE=shared
- Le module correspondant sera construit comme module DSO. Par défaut, les modules activés sont liés dynamiquement.
--enable-MODULE=static
- Le module correspondant sera lié statiquement.
Note
configure
--enable-foo
même si foo n'existe pas, il faut donc taper avec précaution.
Choix des modules à compiler
La plupart des modules sont compilés par défaut et doivent être désactivés explicitement ou en utilisant le mot-clé few
(voir --enable-modules
, --enable-mods-shared
et --enable-mods-static
ci-dessous pour plus d'explications) ou --enable-modules=none
à supprimer en tant que groupe.
D'autres modules ne sont pas compilés par défaut et doivent être activés explicitement ou en utilisant les mots-clés. all
ou reallyall
pour être disponibles.
Pour savoir quels modules sont compilés par défaut, exécutez ./configure -h
ou ./configure --help
et regardez sous Optional Features
. Supposons que vous soyez intéressé par mod_example1
et mod_example2
et que vous voyez ceci :
Optional Features: ... --disable-example1 example module 1 --enable-example2 example module 2 ...
Puis mod_example1
est activé par défaut, et vous utiliseriez --disable-example1
pour ne pas le compiler. mod_example2
est désactivé par défaut, et vous utiliseriez --enable-example2
pour le compiler.
Modules multiprocesseurs
Les modules multiprocesseurs, ou MPM, mettent en œuvre le comportement de base du serveur. Un seul MPM doit être actif pour que le serveur puisse fonctionner. La liste des MPM disponibles apparaît sur la page d'index des modules.
Les MPM peuvent être construits en tant que DSO pour un chargement dynamique ou liés statiquement au serveur, et sont activés à l'aide des options suivantes :
--with-mpm=MPM
-
Choisissez le MPM par défaut pour votre serveur. Si les MPM sont construits en tant que modules DSO (cf.
--enable-mpms-shared
), cette directive sélectionne le MPM qui sera chargé dans le fichier de configuration par défaut. Sinon, cette directive sélectionne le seul MPM disponible, qui sera lié statiquement au serveur.Si cette option est omise, le MPM par défaut de votre système d'exploitation sera utilisé.
--enable-mpms-shared=MPM-LIST
-
Activez une liste de MPM en tant que modules partagés dynamiques. L'un de ces modules doit être chargé dynamiquement à l'aide de l'option
LoadModule
.MPM-LIST est une liste, séparée par des espaces, de noms de MPM entre guillemets. Par exemple :
--enable-mpms-shared='prefork worker'
En outre, vous pouvez utiliser le mot-clé spécial
all
qui sélectionnera tous les MPM qui supportent le chargement dynamique sur la plate-forme actuelle et les construira en tant que modules DSO. Par exemple :--enable-mpms-shared=all
Modules tiers
Pour ajouter des modules tiers supplémentaires, utilisez les options suivantes :
--with-module=module-type:module-file[, module-type:module-file]
-
Ajoutez un ou plusieurs modules tiers à la liste des modules liés statiquement. Le fichier source du module
module-file
sera recherché dans le fichiermodules/module-type
de l'arborescence des sources de votre serveur HTTP Apache. S'il n'y est pas trouvéconfigure
est considéré fichier-module comme étant un chemin de fichier absolu et essaie de copier le fichier source dans le module module-type dans le sous-répertoire. Si le sous-répertoire n'existe pas, il sera créé et rempli avec un fichier standard de typeMakefile.in
.Cette option est utile pour ajouter de petits modules externes composés d'un seul fichier source. Pour des modules plus complexes, vous devez lire la documentation du fournisseur.
Note
Si vous voulez construire un module DSO au lieu d'utiliser un module lié statiquement.
apxs
.
Options cumulatives et autres
--enable-maintainer-mode
- Activez le débogage et les avertissements de temps de compilation et chargez tous les modules compilés.
--enable-mods-shared=MODULE-LIST
-
Définit une liste de modules à activer et à construire en tant que modules partagés dynamiques. Cela signifie que ces modules doivent être chargés dynamiquement en utilisant l'option
LoadModule
de la directiveLoadModule
.MODULE-LIST est une liste de noms de modules séparés par des espaces et entourés de guillemets. Les noms de modules sont donnés sans le préfixe
mod_
. Par exemple :--enable-mods-shared='headers rewrite dav'
En outre, vous pouvez utiliser les mots-clés spéciaux
reallyall
,all
,most
etfew
. Par exemple,--enable-mods-shared=most
compilera la plupart des modules et les construira en tant que modules DSO,
--enable-mods-shared=few
ne compilera qu'un ensemble très basique de modules.
L'ensemble par défaut est
most
.Le site
LoadModule
pour les modules choisis seront automatiquement générées dans le fichier de configuration principal. Par défaut, toutes ces directives seront commentées, sauf pour les modules qui sont soit requis, soit explicitement sélectionnés par un configure--enable-foo
argument. Vous pouvez changer l'ensemble des modules chargés en activant ou en désactivant la directiveLoadModule
danshttpd.conf
. En outre, les directivesLoadModule
pour tous les modules construits peuvent être activées via l'option configure--enable-load-all-modules
. --enable-mods-static=MODULE-LIST
- Cette option se comporte de manière similaire à
--enable-mods-shared
mais liera les modules donnés de manière statique. Cela signifie que ces modules seront toujours présents lors de l'exécution de la commandehttpd
. Ils n'ont pas besoin d'être chargés avecLoadModule
. --enable-modules=MODULE-LIST
- Cette option se comporte comme
--enable-mods-shared
, et liera également les modules donnés de manière dynamique. Le mot-clé spécialnone
désactive la construction de tous les modules. --enable-v4-mapped
- Autorise les sockets IPv6 à gérer les connexions IPv4.
--with-port=PORT
- Ceci définit le port sur lequel
httpd
écoutera. Ce numéro de port est utilisé lors de la génération du fichier de configuration.httpd.conf
. La valeur par défaut est 80. --with-program-name
- Définir un nom d'exécutable alternatif. La valeur par défaut est
httpd
.
Paquets optionnels
Ces options sont utilisées pour définir des paquets optionnels.
Syntaxe générale
En général, vous pouvez utiliser la syntaxe suivante pour définir un paquetage optionnel :
--with-PACKAGE[=ARG]
- Utilisez le paquet PACKAGE. La valeur par défaut de ARG est
yes
. --without-PACKAGE
- Ne pas utiliser le paquet PACKAGE. C'est la même chose que
--with-PACKAGE=no
. Cette option est fournie parautoconf
mais n'est pas très utile pour le serveur HTTP Apache.
Paquets spécifiques
--with-apr=DIR|FILE
- Le site Apache Portable Runtime (APR) fait partie de la distribution des sources de httpd et sera automatiquement construit avec le serveur HTTP. Si vous voulez utiliser un APR déjà installé à la place, vous devez dire à
configure
le chemin vers le fichierapr-config
du script. Vous pouvez définir le chemin absolu et le nom ou le répertoire de l'APR installé.apr-config
doit exister dans ce répertoire ou dans le sous-répertoirebin
. --with-apr-util=DIR|FILE
- Les Apache Portable Runtime Utilities (APU) font partie de la distribution source de httpd et seront automatiquement construits avec le serveur HTTP. Si vous voulez utiliser un APU déjà installé à la place, vous devez indiquer à
configure
le chemin vers leapu-config
script. Vous pouvez définir le chemin et le nom absolus ou le répertoire de l'APU installé.apu-config
doit exister dans ce répertoire ou dans le sous-répertoirebin
. --with-ssl=DIR
- Si
mod_ssl
a été activéconfigure
recherche un OpenSSL installé. Vous pouvez définir le chemin du répertoire de la boîte à outils SSL/TLS à la place. --with-z=DIR
configure
recherche automatiquement une version installée dezlib
installée si votre configuration source en requiert une (par exemple, lorsque la bibliothèquemod_deflate
est activé). Vous pouvez définir le chemin du répertoire vers la bibliothèque de compression à la place.
Plusieurs fonctionnalités du serveur HTTP Apache, notamment . mod_authn_dbm
et mod_rewrite
's DBM RewriteMap
utilisent des bases de données clés/valeurs simples pour des recherches rapides d'informations. SDBM est inclus dans l'APU, cette base de données est donc toujours disponible. Si vous souhaitez utiliser d'autres types de bases de données, utilisez les options suivantes pour les activer :
--with-gdbm[=path]
- Si non chemin d'accès n'est spécifié,
configure
recherchera les fichiers d'inclusion et les bibliothèques d'une installation GNU DBM dans les chemins de recherche habituels. Un chemin explicite explicite entraîneraconfigure
à chercher danspath/lib
etpath/include
pour trouver les fichiers pertinents. Enfin, le fichier chemin d'accès peut spécifier des chemins d'inclusion et de bibliothèque spécifiques séparés par un deux-points. --with-ndbm[=path]
- Comme
--with-gdbm
mais recherche une nouvelle installation de DBM. --with-berkeley-db[=path]
- Comme
--with-gdbm
, mais recherche une installation de Berkeley DB.
Note
Les options DBM sont fournies par l'APU et transmises à son script de configuration. Elles sont inutiles lors de l'utilisation d'une APU déjà installée et définie par... --with-apr-util
.
Vous pouvez utiliser plus d'une implémentation de DBM avec votre serveur HTTP. Le type de DBM approprié sera configuré dans la configuration de l'exécution à chaque fois.
Options pour les programmes de support
--enable-static-support
- Construire une version liée statiquement des binaires de support. Cela signifie qu'un exécutable autonome sera construit avec toutes les bibliothèques nécessaires intégrées. Sinon, les binaires de support sont liés dynamiquement par défaut.
--enable-suexec
- Utilisez cette option pour activer
suexec
, qui vous permet de définir l'uid et le gid pour les processus spawnés. N'utilisez pas cette option si vous ne comprenez pas toutes les implications de sécurité de l'exécution d'un binaire suid sur votre serveur. Autres options à configurersuexec
sont décrites ci-dessous.
Il est possible de créer un binaire lié statiquement d'un seul programme de support en utilisant les options suivantes :
--enable-static-ab
- Construire une version liée statiquement de
ab
. --enable-static-checkgid
- Construire une version liée statiquement de
checkgid
. --enable-static-htdbm
- Construire une version liée statiquement de
htdbm
. --enable-static-htdigest
- Construire une version liée statiquement de
htdigest
. --enable-static-htpasswd
- Construire une version liée statiquement de
htpasswd
. --enable-static-logresolve
- Construire une version liée statiquement de
logresolve
. --enable-static-rotatelogs
- Construire une version liée statiquement de
rotatelogs
.
suexec
options de configuration
Les options suivantes sont utilisées pour régler avec précision le comportement de suexec
. Voir Configuration et installation de suEXEC pour de plus amples informations.
--with-suexec-bin
- Ceci définit le chemin d'accès à
suexec
binaire. La valeur par défaut est--sbindir
(voir Réglage fin des répertoires d'installation). --with-suexec-caller
- Ceci définit l'utilisateur autorisé à appeler
suexec
. Il devrait être le même que l'utilisateur sous lequelhttpd
s'exécute normalement. --with-suexec-docroot
- Ceci définit l'arborescence des répertoires sous laquelle
suexec
l'accès est autorisé pour les exécutables. La valeur par défaut est--datadir/htdocs
. --with-suexec-gidmin
- Définir ceci comme le GID le plus bas autorisé à être un utilisateur cible pour
suexec
. La valeur par défaut est 100. --with-suexec-logfile
- Ceci définit le nom de fichier de l'application
suexec
fichier journal. Par défaut, le fichier journal est nommésuexec_log
et situé dans--logfiledir
. --with-suexec-safepath
- Définissez la valeur de la variable d'environnement
PATH
à définir pour les processus lancés parsuexec
. La valeur par défaut est/usr/local/bin:/usr/bin:/bin
. --with-suexec-userdir
- Ceci définit le sous-répertoire sous le répertoire de l'utilisateur qui contient tous les exécutables pour lesquels
suexec
l'accès est autorisé. Ce paramètre est nécessaire lorsque vous voulez utilisersuexec
conjointement avec des répertoires spécifiques à l'utilisateur (comme le prévoit le paramètremod_userdir
). La valeur par défaut estpublic_html
. --with-suexec-uidmin
- Définissez ceci comme l'UID le plus bas autorisé à être un utilisateur cible de
suexec
. La valeur par défaut est 100. --with-suexec-umask
- Définir
umask
pour les processus lancés parsuexec
. Il s'agit par défaut des paramètres de votre système.
Variables d'environnement
Il existe quelques variables d'environnement utiles pour remplacer les choix faits par configure
ou pour l'aider à trouver des bibliothèques et des programmes avec des noms ou des emplacements non standard.
CC
- Définissez la commande du compilateur C à utiliser pour la compilation.
CFLAGS
- Définissez les drapeaux du compilateur C que vous voulez utiliser pour la compilation.
CPP
- Définissez la commande du préprocesseur C à utiliser.
CPPFLAGS
- Définissez les drapeaux du préprocesseur C/C++, par exemple.
-Iincludedir
si vous avez des en-têtes dans un répertoire non standard. includedir. LDFLAGS
- Définissez les drapeaux de l'éditeur de liens, par exemple
-Llibdir
si vous avez des bibliothèques dans un répertoire non standard. libdir.
Section des critiques et des évaluations
Si vous rencontrez un obstacle et souhaitez faire progresser notre rédaction, nous vous proposons d'exécuter un rapport et nous nous ferons un plaisir de l'interpréter.