Question

Dis, mon site Web est: www.example.com

J'ai une page: www.example.com/contactus

Si je retire "www." depuis l'URL ci-dessus, des moyens: example.com/contactus

Il me redirige vers la page d'accueil. Pourquoi ??

Commander l'image suivante de .htaccess:

entrer image description ici

Quelle est la solution pour elle ??

Quels sont les changements que je dois faire dans .htaccess

Était-ce utile?

La solution

Votre htaccess est un peu difficile à lire, mais rien ne semble rediriger l'utilisateur, je pense qu'il est votre baseurl Magento qui fait cela.

Avez-vous essayé d'ajouter le code suivant au htaccess pour rediriger vers www. à ce niveau?

RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Autres conseils

Il y a un paramètre Système-> Configuration-> Web-> Url Options-> redirection automatique à l'URL de base . Réglez que sur 'Non'.

Opinion personnelle: Ce paramètre est une grande source d'ennuis spécialement lors de l'exécution de plusieurs sites de la même instance de magento. Désactiver toujours.

est la seule question que je trouve avec Google selon cette question.

Voici ma solution pour nginx comme proxy inverse apache. Je suis en magento 1.8.0.0 comme multisite. J'ai aussi multi-domaine SSL installé. Je l'ai désactivé et essayé de faire avec redirect config .htaccess (comme le suggère Sander Mangel), mais je me suis retrouvé avec une boucle de redirection sur https: // pages.

En cas de Nginx configuré comme proxy inverse pour apache ensuite essayer de modifier nginx fichiers vhost comme ceci:

server {
listen 80;
listen 443 ssl;
server_name www.domain.com;
return 301 $scheme://domain.com$request_uri;
ssl_certificate     /path/to/your/ssl/domain.crt;
ssl_certificate_key /path/to/your/ssl/domain.key;
ssl_protocols       SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers         HIGH:!aNULL:!MD5;
ssl_session_cache    shared:SSL:10m;
ssl_session_timeout  10m;
}
server {
listen 80;
listen 443 ssl;
server_name domain.com;
ssl_certificate     /path/to/your/ssl/domain.crt;
ssl_certificate_key /path/to/your/ssl/domain.key;
ssl_protocols       SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers         HIGH:!aNULL:!MD5;
ssl_session_cache    shared:SSL:10m;
ssl_session_timeout  10m;
.... // the rest of config goes here
}

Ensuite, redémarrez nginx (comme le redémarrage du /etc/init.d/nginx)

Qu'il. 301 Redirect devrait fonctionner sur toutes les pages redirigeant www non-www

Merci,

Sharif

Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top