.htaccess — htaccess редирект с каталога
Вопрос задан
Изменён 9 месяцев назад
Просмотрен 29 раз
Всем привет! Подскажите как настроить редирект в .htaccess по следующему условию.
- https://site.ru/shop/accessories/101/ -> https://site.ru/shop/accessories/101/
- https://site.ru/shop/accessories/ -> https://site.ru/
- https://site.ru/shop/ -> https://site.ru/
То есть, нужно редиректить с каталога и подкаталога на главную, а если мы на детальной странице товара, то оставить без изменений. Подскажите как это сделать.
- .htaccess
Что касается пункта 1: я понимаю, что вы не хотите делать перенаправление, но хотите, чтобы такой URL пропускался бы без изменений.
Результаты:
Для /shop/
https://htaccess.madewithlove.com?share=52702422-00d5-43f8-a6c2-ada7fb65c137
Для /shop/accessories/
https://htaccess.madewithlove.com?share=8e2cf9f7-2ace-41a7-93a3-33a87cbaf5af
Для /shop/accessories/101/
https://htaccess.madewithlove.com?share=42454e8e-5cd6-4904-a877-e52d822485ea
8Зарегистрируйтесь или войдите
Регистрация через Google Регистрация через Facebook Регистрация через почтуОтправить без регистрации
ПочтаНеобходима, но никому не показывается
Отправить без регистрации
ПочтаНеобходима, но никому не показывается
By clicking “Отправить ответ”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.
htaccess
- Популярные
- Последние
- Без ответа
-
Пропал редирект с /index. php на /
Help! Столкнулся с проблемой нет редиректа с /index.php на / примеры: https://makurino.ru/index.php и https://kikeevka.ru/index.php какая настройка в htaccess отвечает за это? Версия Вебасиста 2.4.1.636 Версия Shop-Script…
-
Ограничение доступа на сайт dev.sitename.ru
На время разработки хочу сделать доступ только по Auth BAsic вот такой .httaccessВыдает ошибку 500 ? Чт оне так? AuthType Basic AuthName «Restricted Access» AuthUserFile /home/****/. htpasswd require user Name <FilesMatch…
-
Как сделать в htaccess редирект домена и поддоменов но новые
Имеется магазин, у него есть три витрины на поддоменах, site.com.ua, opt.site.com.ua и amp.site.com.uaХочу перенести магазин на новый домен site.ua.Как в htaccess прописать правильный редирект, чтоб была переадресация:site.com.ua…
org/Question»>
-
Настройка 301 редиректа через htaсcess
Есть решение
Добрый день,Для полноценного переезда с http на https мне нужно сделать 301 редирект. Я перепробовал все варианты, но каждый раз возникает циклическая переадресация. Прошу помощи у специалиста.В дальнейшем интересует сотрудничество с веб-мастером на…
-
Снова вопрос про перевод магазина на HTTPS
Есть решение
Снова хочу поднять тему перевод магазина на HTTPS (другие аналогичные посты прочитал ;)что сделано:В настройках Инсталлера домен прописан с https://Сайт -> Структура -> Магазин -> Использовать защищенное HTTPS-соединение при оформлении заказа. ..
-
Проблема с Options -MultiViews
Есть решение
При попытке установить SS7 на хостинг вылетает ошибка 500.Но если закомментировать опцию Options -MultiViews, то установка запускается.Для чего служит Options -MultiViews?
org/Question»>
Перенаправление на нужную витрину в зависимости от языка броузера -
Robots, htaccess, sitemap. первичная настройка
На днях открываю сайт для индексации. хотелось бы иметь профессионально заполненные файлы, а не абы как.плюс будут вопросы по деталям работы «зачем и почему» (для дальнейшей самостоятельной правки)з.ы. заказ актуален 1-3 июня
-
Вопрос про редирект в htaccess
Есть решение
Уважаемые Гуру! Помогите, пожалуйста. (.*)$…
-
Hetzner 500 Internal Server Error
Есть решение
Никак не удается побороть ошибку.В коде расставил комментарии.# без этого вместо интерпретации .php пытается их скачать. Физически такого пути нет, но так написано в доках на Хетзнере, и скачивать перестал пытаться. Action application/x-httpd-php56…
-
Как настроить переадресацию
На одной установке webasyst использую сразу несколько сайтов. Один из них landingpage и домен не основной. Как сделать переадресацию с любых страниц на главную для домена с <sub></sub>landingpage<sub></sub>. Знаю что это можно…
org/Question»>
Редирект с http на https?
Есть решение
-
301-редирект — перенаправление URL с параметрами
Есть решение
Доброго времени суток!Внимательно изучил все ветки форума по запросам 301-редирект и перенаправление, но так и не получил окончательной ясности по вопросу 301-редиректа ссылок вида: «index. php?option=com_content&task=view&id=28&Itemid=45″ на…
-
Как правильно настроить htaccess,проблема в решении предложений из PageSpeed…
Доброго времени суток.Помогите пожалуйста правильно настроить файл .htaccess на webasyst,как правильно подключить gzip сжатие файлов,кеширование браузера,собственно основные проблемы которые высвечиваются в PageSpeed-е.Настройкой мучаюсь уже несколько…
org/Question»>
Редирект смешанного ЧПУ на естественный -
восстановление доступов к сайту
Добрый день. Покупал у вас лицензию, но потерял информацию по доступам к сайту. Как можно возобновить? Спасибо!
-
Как настроить переадресацию для определённого сайта?
Есть решение
Как настроить переадресацию для определённого сайта? Не в htaccess. Очень понравилась функция мультисайтов но столкнулась с проблемой, был старый сайт со своими url-ами, я по привычке в htaccess и естественно переадресация работает на всех моих сайтах….
Добрый день! Нужны оригиналы файлов .htsccess и thumb.phpу меня версия скрипта 5.2.4.35330Проблема в том, что эскизы изображений не отображаются на сайте
Добрый день,Есть магазин на Shop-Script 7, у него две витрины, — /shop (русский язык) и /shop-en (английский язык).Все работает нормально.Есть ли какой-то вариант сделать автоматическое перенаправление с корня ИМ на витрину /shop-en, если у…
Здравствуйте!Как сделать редирект с http на https?Пробовал таким способом: RewriteCond %{HTTPS} on RewriteRule checkout/success http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]В результате, редирект идет только на главной странице. На остальных…
org/Article»> Увеличение сроков заголовков истечения кеша от сервераЕсли вы хотите изменить время жизни кеша в браузере отдельных данных, не меняя ядра фреймворка, то это можно сделать директивами в .htaccess.Проверьте, что у вас подключены модули Apache mod_mime и mod_expires и добавьте в корневой .htaccess директивы…
Здравствуйте, товарищи! как сделать редирект со смешанного ЧПУ на естественный. средствами htacces или есть какой-то плагин готовый?
Использование .htaccess для перенаправления URL-адресов без www на URL-адреса с www (или наоборот) — TecAdmin
Если вы когда-нибудь замечали, что некоторые веб-сайты имеют URL-адреса, начинающиеся с «www», а другие — нет, вам может быть интересно если между ними есть разница. Короткий ответ — нет, нет никакой разницы с точки зрения функциональности. Однако с точки зрения SEO обычно рекомендуется выбирать один формат вместо другого и придерживаться его для всех ваших URL-адресов.
Реклама
В этой статье мы объясним, как использовать .htaccess для перенаправления URL-адресов, отличных от WWW, на URL-адреса WWW (или наоборот) и обеспечить согласованность всех URL-адресов вашего сайта.
Шаг 1.
Определите предпочтительный формат URL-адресаПрежде чем вы сможете настроить перенаправление в .htaccess, вам нужно определить, хотите ли вы, чтобы URL-адреса вашего сайта включали «www» или нет. Это вопрос личных предпочтений, но имейте в виду, что обычно проще настроить и поддерживать SSL-сертификаты (используемые для шифрования HTTPS) на доменах, содержащих «www».
После того, как вы определились с предпочтительным форматом URL, вы можете перейти к следующему шагу.
Шаг 2. Создайте резервную копию файла .htaccess
Прежде чем вносить какие-либо изменения в файл .htaccess , рекомендуется создать резервную копию текущей версии. Это гарантирует, что у вас будет копия файла на случай, если что-то пойдет не так в процессе редактирования.
Чтобы создать резервную копию, просто войдите в свою учетную запись веб-хостинга, найдите файл .htaccess и сделайте его копию. Вы можете загрузить файл на свой компьютер или создать новую версию файла с другим именем (например, . htaccess_backup.txt ).
cp .htaccess .htaccess_backup.txt
Шаг 3. Добавьте код перенаправления
Когда у вас есть резервная копия файла .htaccess, пришло время открыть его и начать вносить изменения. Вы можете сделать это с помощью любого текстового редактора, например Блокнота, TextEdit или Sublime Text.
Чтобы найти файл .htaccess, вам необходимо войти в файловый менеджер вашего веб-сайта или FTP-клиент. Файл обычно находится в корневом каталоге вашего веб-сайта (то есть в том же каталоге, где находится ваш файл index.html или index.php). 9(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
В этом примере команда «RewriteEngine On » включает модуль Apache mod_rewrite , который позволяет переписывать URL-адреса.
Команда «RewriteCond» проверяет, начинается ли переменная HTTP_HOST (которая содержит доменное имя веб-сайта) с «www» . Если это не так, команда «RewriteRule» перенаправляет пользователя на тот же URL-адрес с 9(.*)$ http://domain.com/$1 [R=301,L]
Шаг 4: Сохраните и протестируйте
После того, как вы добавили код перенаправления в файл .htaccess, пришло время чтобы сохранить изменения и протестировать их. Для этого просто сохраните файл и загрузите его в корневой каталог вашего веб-сайта (заменив существующий файл .htaccess, если будет предложено).
Затем откройте веб-браузер и введите URL-адрес вашего веб-сайта без «www» (или с «www», если вы перенаправляете в обратном направлении). Если перенаправление настроено правильно, вы должны автоматически перенаправиться на новую версию URL.
Если кажется, что перенаправление не работает, дважды проверьте файл .htaccess, чтобы убедиться в отсутствии опечаток или синтаксических ошибок. Вы также можете попробовать очистить кеш браузера и файлы cookie и снова проверить URL-адрес.
Шаг 5.
Мониторинг аналитики вашего сайтаПосле реализации перенаправления важно отслеживать аналитику вашего веб-сайта, чтобы убедиться, что перенаправление работает должным образом. Ищите любые изменения в шаблонах трафика, показателях отказов или других ключевых показателях, которые могут указывать на проблему с перенаправлением.
Если вы заметили какие-либо проблемы, дважды проверьте файл .htaccess и внесите необходимые изменения. Вы также можете обратиться за помощью к своему поставщику веб-хостинга или профессиональному разработчику.
Заключение
Перенаправление URL-адресов, не относящихся к WWW, на URL-адреса WWW (или наоборот) — это простой, но важный шаг для поддержания последовательного и оптимизированного для SEO веб-сайта. Используя .htaccess для настройки перенаправления, вы можете гарантировать, что URL-адреса вашего сайта всегда будут согласованными и легко запоминающимися как для пользователей, так и для поисковых систем.
Просто не забудьте создать резервную копию файла . htaccess перед внесением каких-либо изменений, тщательно протестируйте перенаправление и отслеживайте аналитику своего сайта, чтобы убедиться, что все работает должным образом. Приложив немного усилий и внимания к деталям, вы сможете настроить перенаправление, которое будет приносить пользу вашему сайту долгие годы.
.htaccess — перенаправить с www на не www и перенаправить на index.php
Судя по тому, что вы указали в комментариях, кажется, что нет необходимости поддерживать два отдельных .htaccess
файлов. В этом случае было бы проще поддерживать только один файл .htaccess
в корне документа (при условии, что они связаны).
Я также делаю следующие предположения о вашем «api», что также упрощает директивы:
- Все запросы вида
/api/
должны направляться на/api/index.php
- Нет физических файлов (или каталогов), к которым нужно получить доступ через
/api/
9апи/. API/index. php [L] # Переписать запросы для корневого приложения RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d Правило перезаписи. index.php [Л] Директива
RewriteBase
здесь не требуется.Обратите внимание, что сначала следует протестировать перенаправление 302 (временное), чтобы избежать возможных проблем с кэшированием. И вам, вероятно, потребуется очистить кеш вашего браузера (и любого посредника) перед тестированием.
Однако небольшое беспокойство по этому поводу (как я упоминал в комментариях) связано с реализацией канонического перенаправления запросов на ваш
/апи/
. Скрипты, отправляющие запросы к API, обычно не следуют перенаправлениям — ожидается, что эти запросы уже направляются на канонический URL-адрес. Таким образом, реализация перенаправления для этих запросов потенциально может сломать эти «неправильные» вызовы API к неканоническому имени хоста. Имеет ли значение, если вызовы API выполняются на неканоническое имя хоста? Перенаправление с www на не-www обычно предназначено только для SEO, что не относится к API.