Reindirizzata alla home page quando rimosso www. dall'URL
-
16-10-2019 - |
Domanda
Dì, il mio sito web è: www.example.com
Ho una pagina: www.example.com/contactus
Se rimuovo "www". dall'URL dall'alto, significa: Esempio.com/contactus
Mi reindirizza alla homepage. Perché ??
Controlla la seguente immagine di .htaccess:
Qual è la soluzione per questo ??
Quali cambiamenti devo apportare in .htaccess
Soluzione
Il tuo htaccess è un po 'difficile da leggere, ma nulla sembra reindirizzare l'utente, penso che sia il tuo Magento Baseurl che lo fa.
Hai provato ad aggiungere il seguente codice a Htaccess per reindirizzare a www. a quel livello?
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Altri suggerimenti
C'è un'impostazione Sistema-> Configurazione-> Web-> URL Opzioni-> Auto-reirect per base URL. Impostalo su "no".
Opinione personale: questa impostazione è una grande fonte di problemi specialmente quando si eseguono più siti Web dalla stessa istanza Magento. Lo disabilito sempre.
Questa è l'unica domanda che ho trovato con Google secondo questo problema.
Ecco la mia soluzione per Nginx come proxy inverso ad Apache. Sto eseguendo Magento 1.8.0.0 come multisito. Ho anche installato SSL multi dominio. L'ho disabilitato e ho provato a reindirizzare con .Htaccess Config (come suggerito da Sander Mangel), ma ho finito con loop di reindirizzamento su https: // pagine.
Se è impostato Nginx come proxy inverso ad Apache, prova a modificare i file VHOST NGINX come questo:
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
}
Quindi riavviare Nginx (come /etc/init.d/nginx riavvio)
Quello. 301 reindirizzamento dovrebbe funzionare su ogni pagina reindirizzando www a non-www
Grazie,
Sharif