Redirection Apache2

Résolu/Fermé
Bruce Willix Messages postés 11968 Date d'inscription mardi 24 mai 2011 Statut Contributeur Dernière intervention 12 juin 2018 - Modifié le 24 mai 2018 à 09:29
mamiemando Messages postés 33078 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 22 avril 2024 - 29 mai 2018 à 12:17
Bonjour,

Je cherche a avoir pour mon site le comportement suivant :
https://www.mackage.com/eu/en/craftsmanship -> https://www.mackage.com/eu/en/craftsmanship
https://www.mackage.com/eu/en/craftsmanship -> https://www.mackage.com/eu/en/craftsmanship
https://www.mackage.com/eu/en/craftsmanship -> https://www.mackage.com/eu/en/craftsmanship

Les deux première redirections fonctionnent bien, mais pas moyen de faire fonctionner la troisième.
Est-ce que quelqu'un peut m'aider ? Voilà mes fichiers de config Apache pour HTTP :

<VirtualHost *:80>

RewriteEngine on
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule (.*) https://www.exemple.com$1 [R=301,L]

</VirtualHost>


et pour HTTPS

<VirtualHost *:443>
Protocols h2 http/1.1

RequestHeader set X-Forwarded-Proto "https"

# Server identification
ServerName www.exemple.com
#ServerName www.exemple.com
ServerAlias exemple.com
ServerAlias *.exemple.com

# Server Admin
ServerAdmin it@exemple.com
ServerSignature Off

#Enable SSL
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite "ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AES:RSA+3DES:!aNULL:$
Header add Strict-Transport-Security: "max-age=15768000;includeSubdomains"
SSLCompression Off
SSLCertificateFile /path/to/my/certificate/certificate.pem

<proxy>
AddDefaultCharset off
Order deny,allow
Allow from all
</proxy>

# Force www if www is not found in URI
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.exemple.com/$1 [R=301,L]

# Setup Proxy
ProxyRequests Off
ProxyPreserveHost On
ProxyVia full
ProxyTimeout 18000
SetEnv proxy-nokeepalive 1

# Avoid Proxy features for some pages
# ProxyPass "/server-info" !
# ProxyPass "/server-status" !
ProxyPass "/robots.txt" !
ProxyPass "/Pictures" !
ProxyPass "/maintenance" !

# Setup reverse proxy
ProxyPass /longpolling/ http://localhost:8072/longpolling/
ProxyPassReverse /longpolling/ http://localhost:8072/longpolling/
ProxyPass / http://127.0.0.1:8069/
ProxyPassReverse / http://127.0.0.1:8069/

</VirtualHost>


J'ai aussi essayé les rewrite suivants:


RewriteCond %{HTTP_HOST} !^www\.
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]


RewriteCond %{HTTP_HOST} ^exemple\.com$
RewriteRule ^(.*)$ https://www.exemple.com$1 [R=301,L]


Enfin, j'ai aussi tenté de créer un virtual host qui ne gérerait que la redirection

<VirtualHost *:443>

ServerName exemple.com
Redirect permanent / https://www.mackage.com/eu/en/craftsmanship

</VirtualHost>


Merci beaucoup pour votre aide !

Bruce

1 réponse

mamiemando Messages postés 33078 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 22 avril 2024 7 749
Modifié le 28 mai 2018 à 08:27
Bonjour,

Si tu as l'intention d'utiliser Let’s Encrypt à terme, je crois que me souvenir que lorsque tu installe le paquet
certbot
, il s'occupe d'adapter ta configuration apache pour faire ces redirections.

Et sinon, voici comment procéder.

Bonne chance
0
Bruce Willix Messages postés 11968 Date d'inscription mardi 24 mai 2011 Statut Contributeur Dernière intervention 12 juin 2018 2 587
28 mai 2018 à 09:23
Bonjour,

Merci pour ta réponse, mais je ne saisis pas très bien : le lien mène sur un thread expliquant comment rediriger https vers http (ce qui est idiot soit dit en passant). Quant à Let's encrypt on ne l'utilise pas pour le moment - j'ai un certificat émis par Comodo.

Ceci dit, j'ai résolu mon problème en utilisant

RewriteCond %{HTTP_HOST} ^exemple\.com$
RewriteRule ^(.*)$ https://www.exemple.com$1 [R=301,L]


Plutot que

Redirect permanent / https://www.mackage.com/eu/en/craftsmanship


dans le virtual host dédié au ServerName exemple.com

Mon problème est donc résolu.

Merci !
0
mamiemando Messages postés 33078 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 22 avril 2024 7 749
Modifié le 29 mai 2018 à 12:22
Merci pour ton retour.

En fait, j'avais concentré ma réponse sur la 2e redirection que tu évoquais, mais il est vrai que ta question portait surtout sur la 3e.

Bonne continuation :-)
0