htaccess force https et redirection web pour les non-www, mais pas d'autres sous-domaines
Je sais qu'il y a beaucoup de semblables fils, mais aucun ne semble correspondre à mon problème exact. Voici ce que je suis en train de faire:
(1) http://www.mydomain.com/-> https://mydomain.com/
(2) http://mydomain.com/ -> https://mydomain.com/
(3) https://www.mydomain.com -> https://mydomain.com/
Idéalement, je voudrais également couvrir la situation si je vais jamais ajouter plus de sous-domaines, automatiquement se comportent comme les suivants (de préférence dans une méthode générique qui va travailler pour tout sous-domaine-je ajouter).
(4) http://sub.mydomain.com/-> https://sub.mydomain.com/
À ce point, je me demande si c'est même possible de créer un seul .fichier htaccess qui fait tout ce dont j'ai besoin, même si je dois admettre que je comprends regexes, mais je ne suis pas exactement un mod_rewrite uberpro.
Voici les solutions que j'ai déjà essayé:
- La Force de la non-www et https via htaccess
- Genre de travaux, mais semble générer une redirection en boucle
- .htaccess de redirection www à la non-www avec SSL/HTTPS
- Travaille pour (1) et (3), mais pas pour (2)
- htaccess de la force de www à la non-www avec la prise en considération de l'http ou https
- Redirige vers http://mydomain.com/ (sans https) pour (1)
- Ne fait rien pour (2)
- Redirige vers http://mydomain.com/ (sans https) pour (3)
Mon certificat SSL couvre le www-sous-domaine, donc je ne suis pas à la recherche d'un non fiables connexion " solution de l'erreur, je suis consciente que ce n'est pas possible.
Vous devez vous connecter pour publier un commentaire.
Mettez ce code dans votre
DOCUMENT_ROOT/.htaccess
fichier:http://www.edelextra.biz/
,http://edelextra.biz/
,https://www.edelextra.biz/
ethttps://edelextra.biz
– il y a toujours environ 20 '301 moved permanently est jusqu'à ce qu'il arrête d'essayer. imgur.com/a/pbpcn%{HTTPS}
est une fonctionnalité de mod_ssl, ce qui n'est pas en cours d'exécution sur mon hébergeur machines. Au lieu de cela, ils utilisent le livre HTTPS-frontend, qui offre la variable d'environnement%{ENV:HTTPS}
. J'ai donc ajouté une ligne pour vérifier que la gauche et l'ancien afin de travailler sur l'héritage des configurations et de. Mon enfin-travail .htaccess ressemble à ceci maintenant:RewriteEngine On RewriteCond %{HTTPS} !=on RewriteCond %{ENV:HTTPS} !=on RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE] RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] RewriteRule ^ https://%1%{REQUEST_URI} [L,R=301,NE]
RewriteCond %{ENV:HTTPS} !=on
dans votre contraire parfaitement de travail bien conçus de code ci-dessus, de sorte que je peux marquer ce que a répondu! Et merci beaucoup pour votre patience!http://domain.com
->https://domain.com
. Est-ce comme ça pour quelqu'un d'autre?RewriteCond %{ENV:HTTPS} off
ligne et testez à nouveau. Si cela ne fonctionne toujours pas alors s'il vous plaît poster une nouvelle question avec plus de détails.J'ai trouvé la plupart des suggestions n'étaient pas attraper quand vous avez eu quelque chose qui a été https://www.example.com et de la rediriger vers https://example.com.
La suite travaillé pour toutes les permutations:
Espère que cela aide quelqu'un!
.htaccess
fichier, mais n'a toujours pas de redirectionhttps://www.example.com
àhttps://example.com
lorsqu'utilisé dans une<Directory>
bloc sous un hôte virtuel fichier de configuration. Une idée de comment l'adapter pour ce cas?<Directory>
bloc sous mon*:80
et*:443
des hôtes virtuels.https://www.example.com
àhttps://example.com
. J'ai également eu à inclure cela dans les deux*:80
et*:443
hôte virtuel pour le faire fonctionner.Ce script de redirection
à
tout en préservant le sous-domaine.
De Force à l'aide de HTTPS
À Force de www de non www
Non des exemples travaillé pour moi, ils semblaient coincés dans une boucle, le suivant fonctionne bien.
L'ordre des questions, elle permet d'éviter une 3ème rediriger dans certains cas.
Si vous souhaitez utiliser un sous-domaine (ou quelque chose d'autre que www.) il suffit de retirer le premier jeu de règles.
Donc, pour tous les sous-domaines que vous avez besoin est
- Je utiliser Cloudways services et j'ai trouvé que c'était la seule chose qui fonctionne
J'ai trouvé la réponse suivante correspond à votre besoin:
Accomplir tous les trois (3) conditions:
mais pas d'autres sous-domaines que
www
comme suit: