This shows you the differences between two versions of the page.
|
en:linux:serveur_web:config [2011/12/07 09:06] matthieu créée |
en:linux:serveur_web:config [2012/01/06 10:33] (current) matthieu [Redirects] |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | {{tag>en en:linux en:serveur en:web}} | + | {{tag>en en:linux en:server en:web}} |
| ====== Apache Configuration ====== | ====== Apache Configuration ====== | ||
| Line 66: | Line 66: | ||
| * All : all features except MultiViews | * All : all features except MultiViews | ||
| * ExecCGI : allows CGI exectution | * ExecCGI : allows CGI exectution | ||
| - | * FollowSymLinks : allow to access symbolic links\\ La directive directory ne s'applique qu'au répertoire initial.\\ La cible doit être également lisible par Apache, attention cependant à la confidentialité des données du serveur.\\ cette directive ne s'applique pas aux <Location> | + | * FollowSymLinks : allows to access symbolic links\\ The destination of the link must be readable by Apache, be carefull with the security.\\ This option is not available with <Location> |
| - | * Includes : Autorise les Includes | + | * Includes : allows "Includes" |
| - | * IncludesNOEXEC : Autorise les Includes mais désactive les fonctions #exec cmd et #exec cgi | + | * IncludesNOEXEC : allows "Includes" but will disable functions #exec cmd and #exec cgi |
| - | * Indexes : Génère un listing des répertoires | + | * Indexes : allows directory listing |
| - | * MultiViews : Autorise l'utilisation de mod_negociation | + | * MultiViews : allows the use of mod_negociation |
| - | * SymLinksIfOwnerMatch : Identique à FollowSymlinks mais ne suit que les liens ayant le même propriétaire que la cible | + | * SymLinksIfOwnerMatch : similar to FollowSymlinks but only allows links with the same owner |
| - | Par exemple avec l'autorisation de suivre les liens symboliques : | + | Example with symbolic link authorization : |
| <code apache> | <code apache> | ||
| Alias /wiki /opt/dokuwiki | Alias /wiki /opt/dokuwiki | ||
| Line 83: | Line 83: | ||
| </code> | </code> | ||
| - | Il est possible d'utiliser les opérateurs + et - pour définir des modifications par rapport aux droits hérités. Par exemple pour ajouter le listage des fichiers dans un sous répertoire : | + | It is possible to use "+ and "-" to define modification from inherited options. For example to add directory listing to a subfolder (without removing other options) : |
| <code apache> | <code apache> | ||
| <Directory /opt/dokuwiki/share> | <Directory /opt/dokuwiki/share> | ||
| Line 90: | Line 90: | ||
| </code> | </code> | ||
| - | Enfin, il est possible de redéfinir des options directement dans les répertoires avec le fichier ".htaccess". Les options autorisées dans ce fichier sont définies avec la commande "AllowOverride". Par exemple : | + | Finally, it is possible to change the options with ".htaccess" files located directly on the file system. To allow the use of ".htaccess", the option "AllowOverride" must be defined. For example : |
| <code apache> | <code apache> | ||
| Alias /wiki /opt/dokuwiki | Alias /wiki /opt/dokuwiki | ||
| Line 100: | Line 100: | ||
| </Directory> | </Directory> | ||
| </code> | </code> | ||
| - | Exemple de fichier .htaccess qui interdit l'accès à son répertoire : | + | .htaccess example which deny all access to the folder : |
| <code apache> | <code apache> | ||
| order allow,deny | order allow,deny | ||
| Line 106: | Line 106: | ||
| </code> | </code> | ||
| - | Remarque : il est également possible de modifier les options sur l'arborescence des urls plutôt que l'arborescence du système de fichier avec la balise <Location> à la place de <Directory>. | + | Note : it is possible to apply options based on url path instead of file system with the tag <Location> instead of <Directory>. |
| - | ===== Personnalisation ===== | + | ===== Customization ===== |
| - | Il est possible de personnaliser le serveur avec les options suivantes : | + | It is possible to customize the server with the following options : |
| - | * ServerAdmin définit l'adresse email indiquée dans les messages d'erreur | + | * ServerAdmin defines the email displayed in error messages |
| - | * ServerSignature définit la signature ajoutée aux documents générés par le serveur | + | * ServerSignature defines the signature displayed on server generated pages |
| - | Exemple : | + | Example : |
| <code apache> | <code apache> | ||
| ServerAdmin matthieu@bouthors.fr | ServerAdmin matthieu@bouthors.fr | ||
| Line 120: | Line 120: | ||
| - | ===== Virtual hosting, redirections et reverse proxy ===== | + | ===== Virtual hosting, redirects and reverse proxy ===== |
| - | Le virtual hosting est utilisé pour héberger plusieurs site webs sur une seule IP publique. Apache permet plusieurs mécanismes : | + | Apache has several useful features : |
| - | * l'hébergement de plusieurs sites webs virtuels | + | * Virtual hosting used to host several websites on a single public IP |
| - | * la redirection de l'utilisateur sur une autre url, également utilisé pour rediriger la racine vers une sous partie du site web | + | * redirecting users to another url, also used to redirect the root to another part of a site |
| - | * la réécriture pour faire office de reverse proxy et transmettre à un autre serveur web | + | * rewriting with reverse proxy to forwarding the request to another server |
| ==== Virtual hosting ==== | ==== Virtual hosting ==== | ||
| - | L'hébergement local de plusieurs site se fait grâce aux options suivantes : | + | Hosting of several websites : |
| - | * NameVirtualHost décrit quelles IP hébergent des virtual host | + | * NameVirtualHost defines which IP are hosting virtual hosts |
| - | * <VirtualHost> définit un virtual host | + | * <VirtualHost> defines a virtual host |
| - | * ServerName définit le nom d'hôte du <VirtualHost> | + | * ServerName defines the hostname of the current <VirtualHost> |
| - | * ServerAlias permet d'ajouter d'autres noms en plus de ServerName | + | * ServerAlias allows to define additional hostnames |
| - | Par exemple pour héberger www.bouthors.fr et web3.bouthors.fr sur le même apache avec deux configurations différentes : | + | For example to host www.bouthors.fr and web3.bouthors.fr on the same Apache with two different configurations : |
| <code apache> | <code apache> | ||
| <VirtualHost *:80> | <VirtualHost *:80> | ||
| Line 151: | Line 151: | ||
| </VirtualHost> | </VirtualHost> | ||
| </code> | </code> | ||
| - | ==== Redirections ==== | + | ==== Redirects ==== |
| - | Les redirections sont très utilisées, elles permettent d'indiquer à l'utilisateur de faire sa requête auprès d'une autre url. | + | Redirects are often used, they allow to ask the user to request another url. |
| - | Les commandes utilisées sont : | + | Options used are : |
| - | * Redirect redirige un client d'une URL vers une autre. Redirige également toutes les sous URL | + | * Redirect redirect all requests to another URL. This directive map a path to a new path. |
| - | * RedirectMatch redirige les URL correspondant à une expression régulière | + | * RedirectMatch redirect requests matching a regex |
| - | Exemple de redirection de la racine d'un serveur web : | + | Example with the redirection of the root only : |
| <code apache> | <code apache> | ||
| <Directory /var/www/> | <Directory /var/www/> | ||
| Line 170: | Line 170: | ||
| </code> | </code> | ||
| - | Exemple de redirection inconditionnelle par défaut : | + | Example with the redirection of all requests : |
| <code apache> | <code apache> | ||
| <VirtualHost *:80> | <VirtualHost *:80> | ||
| Line 179: | Line 179: | ||
| ==== Reverse Proxy ==== | ==== Reverse Proxy ==== | ||
| - | Apache peut également agir en tant que reverse proxy et transmettre la requête à un autre serveur web. Le module mod-proxy est alors utilisé. | + | Apache can also become a reverse proxy and forward requests to other web servers. In this case, mod-proxy module is used. |
| - | Il faut dans un premier temps activer mod-proxy : | + | First, mod-proxy needs to be enabled : |
| <code> | <code> | ||
| # a2enmod proxy_http | # a2enmod proxy_http | ||
| Line 191: | Line 191: | ||
| </code> | </code> | ||
| - | Puis utiliser la directive ProxyPass. Par exemple rediriger le répertoire /wiki vers le serveur web4 : | + | Then the ProxyPass command must be used. For example, to redirect /wiki to the server "web4" : |
| <code apache> | <code apache> | ||
| ProxyPass /wiki/ http://web4.bouthors.fr/wiki/ | ProxyPass /wiki/ http://web4.bouthors.fr/wiki/ | ||
| </code> | </code> | ||
| - | ===== Paramètres supplémentaires ===== | + | |
| + | ===== Additional parameters ===== | ||
| ==== Include ==== | ==== Include ==== | ||
| - | Include est utilisé pour insérer un autre fichier. | + | Include is used to insert another configuration file. |
| - | Exemple (à la fin de apache2.conf) : | + | Example (end of apache2.conf) : |
| <code apache> | <code apache> | ||
| # Include generic snippets of statements | # Include generic snippets of statements | ||
| Line 209: | Line 210: | ||
| </code> | </code> | ||
| - | ==== Configuration de PHP ==== | + | ==== PHP Configuration ==== |
| - | Dans ///etc/php5/apache2/php.ini// configurer la taille maximum d'upload autorisé, par exemple : | + | Inside ///etc/php5/apache2/php.ini// to configure the maximum upload size : |
| upload_max_filesize = 15M | upload_max_filesize = 15M | ||
| - | Il est également nécessaire de modifier la taille des posts : | + | To change the maximum post size : |
| post_max_size = 8M | post_max_size = 8M | ||
| - | Dans les cas ou il faut beaucoup de mémoire, modifier memory_limit : | + | If you need a lot of memory, change memory_limit : |
| memory_limit = 128M | memory_limit = 128M | ||
| ==== Log ==== | ==== Log ==== | ||
| - | Les logs peuvent être contrôlées de différentes façons, voici quelques paramètres fréquents : | + | Logs can be controled by different ways : |
| - | * CustomLog : Définit le nom du fichier de log et son format | + | * CustomLog : defines the log name and log format |
| - | * ErrorLog : Définit où les logs d'erreur sont envoyées | + | * ErrorLog : defines where error logs are sent |
| - | * LogLevel : Définit le niveau de verbosité | + | * LogLevel : defines the level of verbosity |
| - | Exemple : | + | Example : |
| <code apache> | <code apache> | ||
| ErrorLog ${APACHE_LOG_DIR}/error.log | ErrorLog ${APACHE_LOG_DIR}/error.log | ||
| Line 239: | Line 240: | ||
| </code> | </code> | ||
| - | ==== Encodage des caractères spéciaux ==== | + | ==== Charset Encoding ==== |
| - | Le fichier ///etc/apache2/conf.d/charset// définit le Content-Type renvoyé par Apache. | + | The file ///etc/apache2/conf.d/charset// defines the Content-Type used by Apache. |
| - | Par défaut, il est en UTF8 : | + | By default, UTF8 is used : |
| <file> | <file> | ||
| AddDefaultCharset UTF-8 | AddDefaultCharset UTF-8 | ||
| </file> | </file> | ||
| - | Pour configurer le serveur en ISO, il faut indiquer : | + | To use ISO instead, the following option can be used : |
| <file> | <file> | ||
| AddDefaultCharset ISO-8859-15 | AddDefaultCharset ISO-8859-15 | ||
| Line 253: | Line 254: | ||
| ===== Links ===== | ===== Links ===== | ||
| - | * [[linux:serveur_web]] | + | * [[en:linux:serveur_web]] |