Перенаправлен на домашнюю страницу при удалении www. из URL

magento.stackexchange https://magento.stackexchange.com/questions/1332

  •  16-10-2019
  •  | 
  •  

Вопрос

Скажи, мой сайт: www.example.com

У меня одна страница: www.example.com/contactus

Если я удалю "www. из вышеупомянутого URL -адреса: example.com/contactus

Это перенаправляет меня на домашнюю страницу. Почему ??

Оформить следующее изображение .htaccess:

enter image description here

Какое решение для этого ??

Какие изменения я должен внести в .htaccess

Это было полезно?

Решение

Ваш HTACCESS довольно сложно читать, но, кажется, ничто не перенаправляет пользователя, я думаю, что это ваш Magento Baseurl, который делает это.

Пробовали ли вы добавить следующий код в HTACCESS в перенаправление на www. на этом уровне?

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

Другие советы

Есть настройка в System-> Configuration-> Web-> Options-> Auto-Redirect на базовый URLАнкет Установите это на «нет».

Личное мнение: эта обстановка является большим источником проблем, особенно при запуске нескольких веб -сайтов из одного и того же экземпляра Magento. Я всегда отключаю это.

Это единственный вопрос, который я нашел в Google в соответствии с этим вопросом.

Вот мое решение для NGINX в качестве обратного прокси для Apache. Я использую Magento 1.8.0.0 как многосайт. У меня также установлен Multi Domain SSL. Я отключил его и попытался сделать перенаправление с помощью конфигурации .htaccess (как предложил Сандер Мангель), но в итоге я получил перенаправление петли на https: // pages.

Если nginx настроен как обратный прокси для Apache, попробуйте редактировать файлы nginx vhost, как это:

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
}

Затем перезапустите nginx (например, etc/init.d/nginx перезапуск)

Это. 301 перенаправление должно работать на каждой странице, перенаправляемой www на WWW

Спасибо,

Шариф

Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top