APACHE protocole SSL sur une partie du site

APACHE protocole SSL sur une partie du site - Windows & Software

Marsh Posté le 09-06-2006 à 12:43:37    

Bonjour tous,
Pour un site j'ai activé le protocole SSL seulement j'aimerais désactivé le SSL sur un repretoire (et tous ses sous-repertoires).
De même j'ai crée un virtualhost sur *.80 afin de forcer la redirection sur le site avec le protocole SSL.
 
voiçi la config des virtualhost

Code :
  1. NameVirtualHost *:443
  2. <VirtualHost *:443>
  3. ServerAdmin admin@samael.com
  4. DocumentRoot "C:/website"
  5. ServerName samael.com
  6. SSLEngine On
  7. SSLCertificateFile conf/ssl/user.crt
  8. SSLCertificateKeyFile conf/ssl/user.key
  9. ErrorLog logs/extranet-error_log
  10. CustomLog logs/extranet-access_log common
  11. </VirtualHost>
  12. <VirtualHost *:80>
  13. Redirect / https://samael.com/
  14. ServerAdmin admin@samael.com
  15. DocumentRoot "D:/website"
  16. ServerName samael.com
  17. TransferLog logs/extranet-domainone_access.log
  18. ErrorLog logs/extranet-domainone_error.log
  19. </VirtualHost>


 
Imaginons que je créé un repertoire test à la racine :
je voudrais que sur ce repertoire, le protocole SSL ne soit pas activé, ou du moins la redirection automatique vers SSL ne soit pas effectuée.


Message édité par Aquarius_28 le 09-06-2006 à 12:44:19
Reply

Marsh Posté le 09-06-2006 à 12:43:37   

Reply

Marsh Posté le 09-06-2006 à 16:33:27    

Huum  
Sinon j'ai un peu feinté pour que ca marche presque, simple question :
j'ai créé deux virtual host
un sur le port 80 qui redirige toutes les requettes sur l'adresse https (Redirect / "https://#serveur#/" )  
et l'autre qui redirigent les requettes sur un repertoire précis vers le port 80 (Redirect / "http://#serveur#/" )  
Seulement voilà je voudrais établir la regle suivante :
 - TOUTES les requettes SAUF l'adresse http://#serveur#/repertoire_non_secure/* sont redirigées sur l'HTTPS
 - SEUL l'adresse https://#serveur#/repertoire_non_secure/* est redirigée sur l'HTTP

Reply

Marsh Posté le 09-06-2006 à 17:22:43    

bon là j'utilise les expresssions réguliere, simplement je n'arrive pas faire une négation toute bete !

Reply

Marsh Posté le 09-06-2006 à 17:41:59    

Personne ?

Reply

Marsh Posté le 13-06-2006 à 12:20:35    

Bon devant tant d'aide j'ai réussi a trouver la solution :

Code :
  1. # Règles de redirection :
  2. # Tous les urls en http:// doivent être redirigées sur https:// sauf :
  3. #  - Dossier
  4. # De même si ces urls sont en https:// elle devront être redirigés en http://
  5. <VirtualHost *:80>
  6. ServerName xxx
  7. ServerPath "D:/.../website"
  8. DocumentRoot "D:/.../website"
  9. DirectoryIndex index.jsp
  10. ServerAdmin xxx@xxx.com
  11. ErrorLog logs/extranet-error_log
  12. CustomLog logs/extranet-access_log common
  13. RewriteEngine on
  14. RewriteCond %{SERVER_PORT} !^443$
  15. RewriteRule !^/(.*)(Dossier)(.*) https://%{SERVER_NAME}/$1$2
  16. RewriteLog logs/httpd_rewrite_log
  17. RewriteLogLevel 0
  18. </VirtualHost>
  19. <VirtualHost *:443>
  20. ServerName xxx
  21. DocumentRoot "D:/.../website"
  22. DirectoryIndex index.jsp
  23. ServerAdmin xxx@xxx.com
  24. ErrorLog logs/extranet-error_log
  25. CustomLog logs/extranet-access_log common
  26. SSLEngine on
  27. SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
  28. SSLCertificateFile conf/ssl/user.crt
  29. SSLCertificateKeyFile conf/ssl/user.key
  30. <Files ~ "\.(cgi|shtml|phtml|php3?)$">
  31. SSLOptions +StdEnvVars
  32. </Files>
  33. SetEnvIf User-Agent ".*MSIE.*" \
  34. nokeepalive ssl-unclean-shutdown \
  35. downgrade-1.0 force-response-1.0
  36. CustomLog logs/ssl_request_log \
  37. "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
  38. RewriteEngine on
  39. RewriteCond %{SERVER_PORT} !^80$
  40. RewriteRule ^/(.*)(Dossier)(.*) http://%{SERVER_NAME}/$1$2
  41. RewriteLog logs/httpd_rewrite_log
  42. RewriteLogLevel 0
  43. </VirtualHost>


Message édité par Aquarius_28 le 13-06-2006 à 12:22:49
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed