Outils pour utilisateurs

Outils du site


informatique:linux:apache

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
informatique:linux:apache [2009/03/12 09:30] – benoitinformatique:linux:apache [2013/02/27 11:19] (Version actuelle) – benoit
Ligne 190: Ligne 190:
  
  
-==== Quelques expressions régulières à connaître ==== +Les règles de réécriture utilisent les [[regexp|expressions régulières]]
-N’importe quel caractère : **.** +
- +
-N’importe lequel de cette liste de caractères : **[abcd]** +
- +
-Tout caractère non compris dans la liste (autre que a, b, c ou d) : **[^abcd]** +
- +
-Alternative, soit « blanc », soit « noir » : **blanc|noir** +
- +
-Une ou N occurrence(s) de l’expression qui précède (N > 1) : **+** +
- +
-Zéro ou N occurrence(s) de l’expression qui précède (N>0) : ***** +
- +
-Groupement permettant l’utilisation des références inverses ($1,... $n) : **^** +
- +
-Délimiter une alternative comme dans (blanclnoir) : **^** +
- +
-Ancre de début de ligne : **^** +
- +
-Ancre de fin de ligne : **$** +
- +
  
 ==== Quelques drapeaux (ou flags) utiles ==== ==== Quelques drapeaux (ou flags) utiles ====
Ligne 291: Ligne 270:
   </Directory>   </Directory>
  
 +Admettons la configuration suivante sur le site **www.zikossworld.com**, on force toutes les urls **http://www.zikossworld.com/dokuwiki** à être ré-ecrites en **https://wiki.zikossworld.com/** :
 +  <Directory /var/www/test>
 +        RewriteEngine On
 +        RewriteCond %{SERVER_PORT} !^443$
 +        RewriteCond %{REQUEST_URI} ^/dokuwiki(.*)
 +        RewriteRule .* https://wiki.zikossworld.com/%{REQUEST_URI} [QSA,R=301,L]
 +  </Directory>
  
 +Si on veux juste sécuriser en HTTPS la partie **/admin** de son site :
 +  <Directory /var/www/test>
 +        RewriteEngine On
 +        RewriteCond %{SERVER_PORT} !^443$
 +        RewriteCond %{REQUEST_URI} ^/admin(.*)
 +        RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [QSA,R=301,L]
 +  </Directory>
  
  
Ligne 323: Ligne 316:
     ProxyVia On     ProxyVia On
   </IfModule>   </IfModule>
 +
 +
 +==== Proxy en vue d'une redirection de flux vers un ou plusieurs Tomcat ====
 +
 +Pour relayer simplement la requêtes vers un tomcat en http
 +
 +  ProxyPass /test http://10.0.0.2:8383/test
 +  ProxyPassReverse /test http://10.0.0.2:8383/test
 +  # Il est parfois nécessaire d'ajouter la directive ci-dessous s'il y a une gestion de cookies sur le site.
 +  ProxyPassReverseCookieDomain 10.0.0.2:8383 www.site.com
 +
 +Pour relayer vers plusieurs Tomcat avec équilibrage de charge :
 +
 +  <Proxy balancer://tomcatservers>
 +    BalancerMember http://10.0.0.2:8383 retry=60
 +    BalancerMember http://10.0.0.3:8384 retry=60
 +  </Proxy>
 +  
 +  <Location /test>
 +    Allow From All
 +    ProxyPass balancer://tomcatservers/test stickysession=JSESSIONID nofailover=off
 +  </Location>
 +
 +
 +
 +
 +
  
  
 ===== SSL ===== ===== SSL =====
 +
 +
 +
 +
 +==== Création du certificat SSL ====
 +
 +Se positionner dans le répertoire de configuration apache :
 +  cd /etc/httpd/conf/
 +
 +Pour générer le certificat voir : [[openssl#creer_un_certificat_ssl|Créer un certificat SSL avec OpenSSL]]
 +
 +
 +==== Configuration dans apache ====
 +
 +  Listen 443
 +  AddType application/x-x509-ca-cert .crt
 +  AddType application/x-pkcs7-crl    .crl
 +  
 +  SSLPassPhraseDialog  builtin
 +  
 +  SSLSessionCache        "shmcb:/var/log/httpd/ssl_scache(512000)"
 +  SSLSessionCacheTimeout  300
 +  
 +  SSLMutex  "file:/var/log/httpd/ssl_mutex"
 +  
 +  <VirtualHost *:443>
 +    DocumentRoot "/ap01/sigfod1/appl/httpd-2.2.6/htdocs"
 +    ServerName www.example.com:443
 +    ServerAdmin you@example.com
 +    ErrorLog "/ap01/sigfod1/appl/httpd-2.2.6/logs/error_log"
 +    TransferLog "/ap01/sigfod1/appl/httpd-2.2.6/logs/access_log"
 +    SSLEngine on
 +    SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
 +    SSLCertificateFile "/etc/httpd/conf/server.crt"
 +    SSLCertificateKeyFile "/etc/httpd/conf/server.key"
 +    CustomLog "/var/log/httpd/ssl_request_log" \
 +          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
 +  </VirtualHost>
 +
 +
 +===== Charset =====
 +Pour afficher correctement les accents dans Apache, ajouter les lignes suivantes 
 +
 +Pour l'UTF-8 :
 +  AddDefaultCharset UTF-8
 +  IndexOptions Charset=UTF-8
 +
 +Pour l'ISO-8859-1
 +  Affichage par défaut 
 +  AddDefaultCharset  ISO-8859-1
 +  IndexOptions Charset=ISO-8859-1
 +
 +Note :!: : **IndexOptions** permet d'afficher correctement les accents lorsqu'Apache liste un répertoire.
 +
informatique/linux/apache.1236850253.txt.gz · Dernière modification : (modification externe)