Je sais qu'il y a des questions en double aquí y aquí mais cela n'a pas résolu mes problèmes.
Lorsque localhost est saisi dans la barre d'adresse du navigateur, il est correctement redirigé vers https://localhost
mais tous les appels à l'intérieur de mon code pour charger des fichiers avec http
ne sont pas redirigées ou réécrites en https
. Par exemple :
<link rel="stylesheet" type="text/css" href="http://static/css/colwidth.min.css">
J'ai essayé Redirect permanent / https://localhost/
dans les fichiers de configuration d'Apache dans le répertoire VirtualHost
et j'ai également essayé RewriteRule
con .htaccess
En Firefox
L'erreur que j'obtiens est la suivante :
Blocage du chargement d'un contenu actif mixte "
http://static/css/colwidth.min.css
"
J'apprécierais que l'on m'aide à comprendre comment procéder avec ambos Configuration d'Apache et .htaccess
(Je sais que .htaccess
n'est pas la méthode préférée - mais j'aimerais quand même comprendre pourquoi elle ne fonctionne pas)
http :
<VirtualHost *:80>
ServerAdmin me@localhost
DocumentRoot "D:/Website/path/to/root"
ServerName localhost
Redirect permanent / https://localhost/
<Directory "D:/Website/path/to/root">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require ip 127.0.0.1
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin me@localhost
DocumentRoot "D:/Website/path/to/root"
ServerName static
Redirect permanent / https://static/
<Directory "D:/Website/path/to/root">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require ip 127.0.0.1
</Directory>
</VirtualHost>
<VirtualHost *:443>
DocumentRoot "D:/Website/path/to/root"
ServerName localhost:443
ServerAdmin me@localhost
ErrorLog "c:/xampp/apache/logs/error.log"
TransferLog "c:/xampp/apache/logs/access.log"
<Directory "D:/Website/path/to/root">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require ip 127.0.0.1
</Directory>
SSLEngine on
SSLCertificateFile "c:/xampp/apache/bin/wtr.cert"
SSLCertificateKeyFile "c:/xampp/apache/bin/wtr.key"
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "c:/xampp/apache/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
CustomLog "c:/xampp/apache/logs/ssl_request.log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
https :
<VirtualHost *:443>
DocumentRoot "D:/Website/path/to/root"
ServerName static:443
ServerAdmin me@localhost
ErrorLog "c:/xampp/apache/logs/error.log"
TransferLog "c:/xampp/apache/logs/access.log"
<Directory "D:/Website/path/to/root">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require ip 127.0.0.1
</Directory>
SSLEngine on
SSLCertificateFile "c:/xampp/apache/bin/static.cert"
SSLCertificateKeyFile "c:/xampp/apache/bin/static.key"
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "c:/xampp/apache/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
CustomLog "c:/xampp/apache/logs/ssl_request.log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
.htaccess
RewriteEngine On
# For SSL
RewriteCond %{HTTPS} !=on
RewriteRule (.*) https://%{SERVER_NAME}/$1 [L,R=301]
# I also tried:
#RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}[L,R=301]
#Rules for Versioned Static Files
RewriteRule ^(js|js-common|css|css-common|img|img-common)/(.+)\.([0-9])+\.(js|css|php|jpg|gif|png)(.*)$ $1/$2.$4$5 [L]
#rename invalid file and directory requests
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?redirectroot=true