Maison > Article > Opération et maintenance > Configuration du service Apache expliquée en détail
Les instructions de configuration d'Apahce peuvent être divisées en deux parties : les instructions de base et les instructions fournies par des tiers. Dans Apache, chaque instruction correspond à un module, et parmi tous les modules, les plus importants sont les modules core_module, so_module, http_module et mpm À l'exception de so_moudle, les autres modules ne peuvent pas être désactivés ou désactivés.
Un : httpd.conf
(1) Partie du serveur principal
1, ServerName : définissez le nom d'hôte par défaut d'Apache, vous pouvez C'est un nom de domaine ou adresse IP 2. ServerRoot : utilisé pour définir le répertoire où se trouve le serveur. Ce chemin est généralement spécifié par --prefix lors de la configuration 3. le répertoire racine du service de page. Ce chemin doit être un chemin absolu plutôt que relatif. S'il y a des espaces, il doit être mis entre guillemets 4. à l'administrateur après une erreur de serveur5, ServerAlias et Alias : sont tous utilisés pour mapper des répertoires, mais ServerAlias identifie le répertoire mappé comme un répertoire de script CGI et traite tous les fichiers de ce répertoire comme CGI scripts. Mais l'alias est simplement mappé à un répertoire normal 6, Utilisateur et groupe : utilisé pour définir l'utilisateur et le groupe d'utilisateurs utilisés pour exécuter le sous-processus Apache 7, Écouter : utilisé pour définir le numéro de port Apache d'écoute8. Commande LoadModule : utilisée pour charger des modules ou des fichiers cibles LoadModule cgi_module modules/mod_cgi.so_module9. ErrorDocument : informations sur la page d'erreur personnalisée ErrorDocument 500 "inconnu. error" ErrorDocument 404 "/var/server/www/cgi-bin/missing_404.pl" ErrorDocument 402 http://www.nicky.com/error_402.html10. options : Déterminer les répertoires à utiliser ces fonctionnalités, ces fonctionnalités sont les suivantes : Aucun : La commande option ne fonctionnera pasExecCGI : Permet l'exécution de scripts CGI dans le répertoire courantInclut : Permet le utilisation des fonctions SSIInclutNOEXEC : La fonction SSI est autorisée, mais les fonctions exec cgi et exec cmd sont désactivées Index : La fonction d'indexation est activée par exemple, si une requête au. L'URL du répertoire n'a pas de fichier d'index spécifié par la directive DirectoryIndex, le serveur renverra automatiquement une liste du contenu du répertoire demandéFollowSymLinks : autorise l'utilisation de liens symboliques dans l'environnement actuel, mais sera ignoré dans le Conteneur d'emplacementTous : Utiliser toutes les fonctionnalités sauf MultiViews, également les options Les paramètres par défaut MultiViews : utilisé pour démarrer la fonction multi-vues fournie par le module mod_négociations 11, ServerTokens : OS/Major/Full affecte le niveau de détail des informations du pied de page d'erreur et n'est généralement pas recommandé
(2) Partie conteneur
1,
<IfModule mpm_netware_module><p> DirectoryIndex index.html <code><IfModule mpm_netware_module><br> DirctoryIndex index.html <br></IfModule>
If Lors du chargement, exécutez <IfModule! mpm_netware_module><code><IfModule !mpm_netware_module><br> DirctoryIndex index.html <br></IfModule>
DirctoryIndex index.html
<IfDefine Proxy>
LoadModule proxy_module modules/libproxy.so
</IfDefine>
3
<Directory /var/apache/html>
Order Deny,Allow
Deny from all
</Directory>
L'exemple ci-dessus désactive l'accès au répertoire /var/apache/html. Toute requête vers /var/apache/html sera rejetée
Si vous souhaitez que le répertoire utilise des expressions régulières, vous devez ajouter un ~
<Directory ~ "^/var/apache[0-9]{2}/html">
Order Deny,Allow
Allow from all
</Directory>
DirectoryMatch : similaire à Directory, sauf qu'il peut directement accepter la correspondance régulière sans ajouter de symbole ~
<DirectoryMatch "^/var/apache[0-9]{2}/html">
Order Deny,Allow
Allow from all
4
Fichiers : ne fonctionne que sur les fichiers. Vous pouvez également utiliser des caractères génériques et [] et ~ devant l'expression régulière pour utiliser des expressions régulières <. ; Fichiers "^.css"><code><Files "^.css"><br> Order Deny,Allow<br>Allow from All<br></Files>
Ordre refusé, Autoriser
<FilesMatch ".(gif|jpe?g|png)$"><br>Order Deny,Allow<br>Allow from All<br></FilesMatch>
FilesMatch : Fichiers sans ajouter de symbole ~
<FilesMatch ".(gif|jpe?g|png)$"><p>Ordre refusé, autoriser<br>Autoriser de tous<span style="font-family: monospace;"></FilesMatch></span></p>
</Location><Location /server-status><br>SetHandler server-status<br></Location>
De plus , vous pouvez mapper les requêtes URL au gestionnaire de module Apache, par exemple, à l'aide du module mod_status :
<Location /server-status><p>SetHandler server-status<strong></Location> </strong></p>
<Location /var/apache/html>
Problème de commande de traitement des conteneurs
Apache le fera gérez-le d'abord. Le conteneur Directory (mais pas Directory et .htaccess avec des expressions régulières) traite ensuite les conteneurs Files et FilesMatch, puis les conteneurs Location et LocationMatch Order deny,allow
Allow from All
</Location>
<Direcotry /var/apache/html>
Order allow,deny
Allow from All
Deny from www.jons.com
</Direcotry>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!