From: Lucien Gentis
Si vous ne voulez pas rediriger la requête, mais simplement interdire l'accès à la ressource, vous pouvez y - parvenir sans utiliser mod_rewrite :
+ parvenir sans utiliserNotez qu'il existe des méthodes d'exclusion qui n'utilisent
- pas mod_rewrite. Notez aussi que toute technique qui repose sur
+ pas USER_AGENT peut être
contournée très facilement car cette chaîne peut être modifiée.
Vous pouvez cependant parvenir au même résultat sans utiliser
- mod_rewrite via la méthode alternative suivante :
+
- mod_rewrite implémente le drapeau [P] qui permet de passer des URLs,
- via mod_proxy, Ã un autre serveur. Deux exemples sont fournis ici.
+
Chaque fois que cela est possible, préférez l'utilisation de la
directive
Ce programme est lancé une fois au démarrage du serveur HTTP
- Apache, puis communique avec le moteur de réécriture via
- STDIN et STDOUT. En d'autres termes, pour
- chaque recherche de correspondance, il reçoit un argument via
- STDIN, et doit renvoyer en guise de réponse une chaîne
- terminée par un caractère nouvelle-ligne sur STDOUT. Si
- la recherche de correspondance est infructueuse, le programme doit
- l'indiquer en retournant la chaîne de quatre caractères
- "NULL".
Ce programme est lancé une fois au démarrage du serveur HTTP Apache, puis
+ communique avec le moteur de réécriture via STDIN et
+ STDOUT. Pour chaque recherche dâune fonction de correspondance,
+ la clé est écrite sur lâentrée standard du programme, suivie dâun caractère
+ nouvelle ligne. Le programme doit lire une ligne sur son entrée standard
+ (jusquâau caractère nouvelle ligne) et écrire sa réponse sous la forme dâune
+ seule ligne terminée par un caractère nouvelle ligne sur sa sortie standard.
+ Les clés ne doivent pas contenir de caractère nouvelle ligne ; dans le cas
+ contraire, la recherche échouera.
Sâil nây a pas de valeur de recherche correspondante, le programme de
+ correspondance renvoie la chaîne de quatre caractères "NULL".
+ Notez que cette comparaison est insensible à la casse et que "null", "Null",
+ etc. seront aussi interprétés comme des recherches ayant échoué. En
+ conséquence, une programme de correspondance ne peut pas renvoyer la chaîne
+ littérale "NULL" comme valeur correspondante.
La sortie dâerreur standard du programme est héritée du processus httpd
+ parent ; tout ce que le programme écrit sur la sortie dâerreur standard
+ arrivera donc au même endroit que la sortie dâerreur de httpd (en général le
+ journal indiqué par la directive
Les programmes de réécriture externes ne sont pas lancés s'il
n'ont pas été définis dans un contexte où la directive
Configuration de la réécriture
dash2under.pl
-dash2under.py
+$| = 1; - La syntaxe sera bien entendu
-différente dans
-d'autres langages. Si les entrées/sorties sont mises en tampon, httpd va
+programme. Dans lâexemple en Python ci-avant, cette opération sâeffectue en
+passant flush=True à print(). Si les entrées/sorties sont mises en tampon, httpd va
attendre une sortie, et va par conséquent se bloquer.SIGTERM
+est envoyé au programme ; sâil ne sâarrête pas dans les 3 secondes, le signal
+SIGKILL lui est envoyé.Applied Cryptography, 2nd Edition, Wiley, -1996. Voir http://www.counterpane.com/ pour diverses autres productions de Bruce -Schneier.
Applied Cryptography, 2nd Edition, Wiley, 1996. Voir +https://www.schneier.com/ pour +diverses autres productions de Bruce Schneier.
Specification of Abstract Syntax Notation @@ -687,8 +694,8 @@ href="http://en.wikipedia.org/wiki/X.509">http://en.wikipedia.org/wiki/X.509- [PKCS]
- +href="https://en.wikipedia.org/wiki/PKCS" +>https://en.wikipedia.org/wiki/PKCS.
Public Key Cryptography Standards (PKCS), RSA Laboratories Technical Notes, Voir http://www.rsasecurity.com/rsalabs/pkcs/.
Multipurpose Internet Mail Extensions @@ -699,8 +706,8 @@ href="http://tools.ietf.org/html/rfc2045">http://tools.ietf.org/html/rfc2045- [SSL3]
- Alan O. Freier, Philip Karlton, Paul C. Kocher,
+href="https://datatracker.ietf.org/doc/html/rfc6101" +>RFC 6101.The SSL Protocol Version 3.0, 1996. Voir http://www.netscape.com/eng/ssl3/draft302.txt.
The TLS Protocol Version 1.0, @@ -716,6 +723,11 @@ href="http://www.netscape.com/eng/ssl3/draft302.txt"
Le protocole TLS Version 1.2, 2008. Voir http://tools.ietf.org/html/rfc5246.
Le protocole Transport Layer Security (TLS) version 1.3, +2018. Voir https://tools.ietf.org/html/rfc8446.