Bonjour monde,
J'ai un site web perso hébergé chez O2switch. J'ai mis une authentification par htpasswd, et activé le HTTPS (par Let's Encrypt).Seulement quand j'active dans le .htaccess la redirection http vers https, l'authentification ne fonctionne plus, on accède au site (sans aucun script et css, mais on peut en voir le contenu).
J'essaye de lire la doc sur le site d'Apache et de chercher une solution sur des fora, mais je n'en viens pas à bout, c'est toujours l'authentification ou le HTTPS qui fonctionne, mais jamais les deux ensemble.
Voici mon htaccess :
Le https est activé dans l'interface de gestion de l'hébergeur (ça passe par Let's Encrypt), c'est actif avec la 1e ligne du htaccess. Et ensuite j'utilise la partie "### HTTP -> HTTPS" du htaccess, hors dans ce cas ça bypasse l'authentification.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48 ### Let's Encrypt RewriteRule ^\.well-known/acme-challenge - [L] ### tests SetEnv APPLICATION_ENV production SetEnv OPERATING_SYSTEM linux RewriteEngine On ### HTTP -> HTTPS RewriteCond %{HTTPS} off RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] RewriteCond %{HTTP_HOST} !^www\. RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] ### rewrite url RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L] ### Videos types AddType video/ogg .ogv AddType video/mp4 .mp4 .m4v .f4v .f4p AddType video/webm .webm ### Encoding files AddDefaultCharset UTF-8 AddCharset UTF-8 .html .css .js ### no authentification for the rss url (public) SetEnvIfNoCase Request_URI "/rss$" allow AuthType Basic AuthName "Please authenticate" AuthUserFile "/home5/user/.htpasswds/public/mywebsite/passwd" Require valid-user Order Deny,Allow Deny from all Allow from env=allow Satisfy any ### Compression AddOutputFilterByType DEFLATE text/text application/xml application/xhtml+xml text/html text/javascript text/css text/plain
Pour l'authentification, ce sont les 8 lignes qui démarre par AuthType Basic jusqu'à Satisfy any. Je les laisse toujours décommentées (en http et https) car je veux toujours qu'on s'authentifie, sauf que si j'ai décommenté les lignes du https, l'authentification ne se fait pas. Pour être plus précis, j'ai bien la fenêtre qui demande le login, mais si je fais Annuler, je peux quand même voir le contenu du site (le html brut s'affiche, sans js et css).
Je n'ai pas la possibilité de voir le vhost, c'est un héberment mutualisé, donc je ne peux agir que sur ce htacces.
Qu'est-ce qui cloche là dedans ?
Merci pour votre aide.
Partager