Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision |
informatique:logiciels:apache [2018/02/04 17:55] – [De l'utilisation d'apache2ctl] pteu | informatique:logiciels:apache [2020/08/25 10:28] – [Syntaxe] mod_rewrite pteu |
---|
On enchaine différentes conditions ''RewriteCond'' (avec le drapeau ''NC'' pour //NoCase//, insensible à la casse) suivis d'un //OU logique// (''OR''), puis on définit la règle ''RewriteRule'' qui contient l'action ''F'' (envoi une erreur **403 : Forbidden** au navigateur) et ''L'' (last) pour arrêter le processus de réécriture. | On enchaine différentes conditions ''RewriteCond'' (avec le drapeau ''NC'' pour //NoCase//, insensible à la casse) suivis d'un //OU logique// (''OR''), puis on définit la règle ''RewriteRule'' qui contient l'action ''F'' (envoi une erreur **403 : Forbidden** au navigateur) et ''L'' (last) pour arrêter le processus de réécriture. |
| |
Exemple de mise ne place d'une redirection temporaire : ajouter ces lignes dans le fichier de configuration du vhost (''/etc/apache2/site-enable/vhost_redir'' dans mon cas) : | Exemple de mise ne place d'une redirection (permanente=301 par défaut) : ajouter ces lignes dans le fichier de configuration du vhost (''/etc/apache2/site-enable/vhost_redir'' dans mon cas) : |
<code bash> | <code bash> |
<IfModule mod_rewrite.c> | <IfModule mod_rewrite.c> |
RewriteEngine On | RewriteEngine On |
RewriteRule ^(.*)$ http://pteu.fr$1 [R=301,L] | RewriteRule ^(.*)$ http://pteu.fr$1 [R,L] |
</IfModule> | </IfModule> |
</code> | </code> |
**Syntaxe** : ''RewriteRule <regex> <url de redirection> [<paramètres>]'' | **Syntaxe** : ''RewriteRule <regex> <url de redirection> [<paramètres>]'' |
| |
dans l'exemple ci-dessus, on redirige tout (''^(.*)$'') vers pteu.fr, avec un code HTTP ''301'' (qui correspond à une redirection temporaire). | dans l'exemple ci-dessus, on redirige tout (''^(.*)$'') vers pteu.fr, avec un code HTTP ''301'' (qui correspond à une redirection permanente). On peut préciser une redirection temporaire (code=302) avec : |
| <code bash> |
| [..] |
| RewriteRule ^(.*)$ http://pteu.fr$1 [R=302,L] |
| </code> |
| |
=====Générer un certificat===== | =====Générer un certificat===== |
| |
Utilisation de l'outil de diagnostique **apache2ctl** (ou **apachectl**, c'est un alias pour la "compatibilité ascendante") : | Utilisation de l'outil de diagnostique **apache2ctl** (ou **apachectl**, c'est un alias pour la "compatibilité ascendante") : |
| * ''apache2ctl -V'' : affiche la version et les options de compilation |
| <code bash> |
| apachectl -V |
| Server version: Apache/2.4.29 (Unix) |
| Server built: Oct 26 2017 16:18:29 |
| Server's Module Magic Number: 20120211:68 |
| Server loaded: APR 1.6.2, APR-UTIL 1.6.0 |
| Compiled using: APR 1.6.2, APR-UTIL 1.6.0 |
| Architecture: 64-bit |
| Server MPM: worker |
| threaded: yes (fixed thread count) |
| forked: yes (variable process count) |
| Server compiled with.... |
| -D APR_HAS_SENDFILE |
| -D APR_HAS_MMAP |
| [..] |
| </code> |
* ''apache2ctl -S'' : permet de lister tous les VirtualHost pris en compte par Apache | * ''apache2ctl -S'' : permet de lister tous les VirtualHost pris en compte par Apache |
<code bash> | <code bash> |