php — Три последовательных 301 редиректа объединить в один
Вопрос задан
Изменён 9 месяцев назад
Просмотрен 26 раз
Помогите пожалуйста объединить 301 последовательных редиректы в один. Пытался сам, но чего то я не могу понять.
http://www.example.com/index.php?asd=asd -> https://example.com
Нужно :
- редирект с http на https
- редирект с www.example.com на example.com
- редирект с example.com/index.php на example.com/
- редирект с example.com/ на example.com ( но только на главной, на остальных случаях, в конце, слэш нужно оставить )
Нужно объединить в один.
Сейчас происходит три 301 редиректа :
- 301 http://www.
Заранее спасибо !
- php
- .htaccess
- redirect
- редирект
- 301
1
Зарегистрируйтесь или войдите
Регистрация через Google
Регистрация через Facebook
Регистрация через почту
Отправить без регистрации
Почта
Необходима, но никому не показывается
Отправить без регистрации
Почта
Необходима, но никому не показывается
Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки
Убрать index.
(.*)index\.(php|html|htm)$ https://site.ru/$1 [R=301,L]
Описание
Очень важные редиректы. Страницы дубли с index.php можно часто наблюдать в выдаче, когда забывают сделать редиректы. И как правило не на первых страницах выдачи. Также часто забывают закрывать заглушки CMS/темы/хостинга в виде index.html или index.htm
Хочу обратить внимание еще на тот факт, что проверять редиректы лучше не только для главной страницы, но и для страниц категорий, разделов. Особенно часто тут грешат многие CMS (в частности Битрикс, Drupal, Joomla) и страницы категории доступны по адресу а-ля https://site.ru/category/index.php, а то и внутри урла, как у Друпала https://site.ru/index.php/node/
Не забудьте после настройки редиректов, особенно когда убираете index.php, проверить доступность админки и других важных разделов вашего сайта, т.к. скорее всего на них также распространяется правило из htaccess и бывают случаи, что в админку невозможно попасть.
Придется добавлять исключения в код редиректов, исключения можно найти выше и приспособить под вашу ситуацию.
Также в качестве рекомендации: желательно вообще заглянуть в корень сайта и посмотреть, какие еще могут файлы html там лежать, очень часто забывают установочные, файлы документации и т.д., которые также участвуют в ранжировании и размывают релевантность сайта, особенно, если у вас мало страниц на сайте
apache — 301 редирект index.html на / или /index.php
спросил
Изменено 10 лет, 9 месяцев назад
Просмотрено 19 тысяч раз
Приветствую,
Я только что переместил веб-сайт с IIS на Apache, и у меня возникли небольшие проблемы с перенаправлением индексного файла без возникновения бесконечного цикла.
Оба они по отдельности вызовут петлю. .htaccess. Кто-нибудь может мне помочь? У меня есть куча ссылок, указывающих на http://www.foo.com/index.htm, которые я хотел бы перенаправить 301 на http://www.foo.com/
RewriteEngine On ########## Начало. Перепишите правила, чтобы заблокировать некоторые распространенные эксплойты. ## Если у вас возникли проблемы на вашем сайте, заблокируйте перечисленные ниже операции ## Это попытка заблокировать наиболее распространенный тип эксплойта «попытки» взломать Joomla! # # Заблокировать любой скрипт, пытающийся установить значение mosConfig через URL RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [ИЛИ] # Заблокировать любой скрипт, пытающийся с помощью base64_encode отправить дерьмо через URL RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [ИЛИ] # Блокировать любой скрипт, который включает тег ]*)$ [NC] Правило перезаписи (.*) index.php RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Авторизация},L] # ########## Конец - Joomla! основной раздел SEF Редирект 301 /a/administrator
- apache
- mod-rewrite
- http-status-code-301
1
Зачем ты это делаешь? Почему бы не добавить index.php в ваш vhost/config в качестве допустимого расширения индекса
DirectoryIndex index.html index.php
Затем удалите файл HTML >
или
DirectoryIndex index.php
Я полагаю, что индекс вашего каталога установлен на index.html, и он находится перед index.php. Тогда ваш http://www.foo.com/ интерпретируется как http://www.foo.com/index.html и перенаправляется на http://www.foo.com/ - отсюда и цикл.
Здесь у вас есть информация о перенаправлении различными способами.
Вам необходимо проверить значение REQUEST_URI следующим образом:
RewriteCond %{REQUEST_URI} ^/index.
htm$ # Если REQUEST_URI == "/index.htm" RewriteRule (.*) / [R=301,L] # Затем 301 редирект на "/"
Я согласен с замечанием Кендера о петле перенаправления. Возможно, наоборот, иметь
DirectoryIndex notindex.html
вместе с вашими переадресациями, а затем поместить фактическую главную страницу в notindex.html. Я не понимаю, что не так с людьми, использующими /index.html, если эта страница действительно существует?
1
Мне еще не разрешено добавлять гиперссылки, так как я новый пользователь, поэтому, когда я ввожу "foo", просто предполагаю, что это полный URL-адрес...
Чтобы перенаправить foo/index.php на foo/ без цикла, используйте другое правило перезаписи:
RewriteRule index.php foo/ [R=301]
Возможно, вам придется использовать /index.php в зависимости от того, как настроена ваша RewriteBase (и сколько каталогов у вас есть index.php).
Зарегистрируйтесь или войдите в систему
Зарегистрируйтесь с помощью Google
Зарегистрироваться через Facebook
Зарегистрируйтесь, используя электронную почту и пароль
Опубликовать как гость
Электронная почта
Требуется, но не отображается
Опубликовать как гость
Электронная почта
Требуется, но не отображается
Как перенаправить 301 страницы .
html | SEO Форум
Ваш браузер не поддерживает JavaScript. В результате ваши впечатления от просмотра будут уменьшены, и вы будете переведены в режим только для чтения .
Загрузите браузер, поддерживающий JavaScript, или включите его, если он отключен (например, NoScript).
- Дом
- SEO-тактика
- Средний и продвинутый SEO
- Как сделать 301 редирект на .
html страницы
Эта тема была удалена. Его могут видеть только пользователи с правами управления вопросами.
Мне нужно перенаправить страницу/URL-адрес исключительно в формате .html на новое место. Я не знаю, как это сделать. Все перенаправления, которые я могу найти, предназначены для кодовых страниц на стороне сервера .php/.aspx и т. д. Насколько я понимаю, я не могу поместить перенаправление на стороне сервера в файл .html. Я размещаюсь на сервере Microsoft, однако новая страница, на которую я перенаправляюсь, — .php. Я запускаю некоторые файлы WordPress (.php) на сервере. Мне нужно сделать перенаправление до того, как загрузится старая страница, чтобы посетители не начали читать то, что вот-вот будет перенаправлено.
Кто-нибудь может мне помочь?
-
Еще раз привет,
Перенаправление 301 — это инструкция, данная серверу, которая сообщает ему, на какую страницу отправить запрос.
Если вы используете сервер Apache, вы должны создать файл .htaccess со строками кода для создания перенаправления.
С сервером Windows у вас должен быть доступ к тому, что фактически является консолью управления сервером, в которую вы можете войти. В этой консоли в диспетчере служб Интернета вы в основном выбираете параметры, которые создают для вас перенаправление на сервере.
Неважно, какие у вас страницы .html или .php ... процесс одинаков в зависимости от того, с какой настройкой сервера вы имеете дело.
Я думаю, возможно, вы путаете перенаправление 301 со сценарием перенаправления, который можно разместить в заголовке документа.
Последний вариант не является лучшим вариантом по ряду причин... в первую очередь потому, что он не позволяет значению ссылки перетекать на новую страницу, а также не сообщает поисковой системе деиндексировать старую страницу и заменять ее новой. новый.
Надеюсь, это поможет,
Ша
-
Привет Ша,
Спасибо за ответ. Я действительно наткнулся на приведенный вами пример. Однако в этом примере перечислены коды для размещения на различных страницах технологий на стороне сервера. Например, в нем перечислены сценарии для размещения на странице .php или странице .aspx. Поскольку мои старые страницы, которые нужно перенаправить, имеют формат .html, я не думал, что это сработает. Например, предположим, что моя старая страница — page.
html, и я помещаю этот скрипт перенаправления 301 на страницу с именем page.php и загружаю его на сервер. Google не будет рассматривать page.php и page.html как одну и ту же страницу и, следовательно, не будет перенаправлять нужную страницу. Это мое понимание, пожалуйста, поправьте меня, если я ошибаюсь.
PS. Я не понимаю указаний для перенаправления IIS, о которых упоминает ваша ссылка. Я не знаю, что имеется в виду под «менеджером интернет-служб», поэтому я не знаю, как следовать его указаниям. Это может быть ответом на мою проблему, я просто не знаю, как ему следовать.Спасибо
-
Привет, MyNet,
Перенаправление 301 должно быть создано на исходном сервере, поскольку ему необходимо перехватить запрос и отправить его в новое место.
Поскольку вы говорите, что размещаетесь на сервере Microsoft, я думаю, что вам нужен метод для создания перенаправления 301 на сервере IIS.
На этой странице краткого справочника вы найдете инструкции по созданию 301-х. Эта страница на самом деле содержит инструкции и/или примеры кода для любой ситуации, о которой вы можете подумать... просто выберите ту, которая вам нужна. (вы должны уточнить у своего интернет-провайдера, какой из них подходит для вашей ситуации)
Надеюсь, это поможет,
Ша
У вас есть животрепещущий вопрос по SEO?
Подпишитесь на Moz Pro, чтобы получить полный доступ к вопросам и ответам, отвечать на вопросы и задавать свои.
Начать бесплатную пробную версию
Есть вопрос?Просмотр вопросов
Посмотреть Все вопросыНовые (нет ответов)ОбсуждениеОтветыПоддержка продуктаБез ответа
От Все времяПоследние 30 днейПоследние 7 днейПоследние 24 часа
Сортировка по Последние вопросыНедавняя активностьБольше всего лайковБольшинство ответовМеньше всего ответовСамые старые вопросы
С категорией Все категорииПартнерский маркетингОбновления алгоритмовAPIBandingСообществоКонкурентные исследованияРазработка контентаОптимизация коэффициента конверсииЦифровой маркетингЗапросы функцийНачало работыОптимизация изображений и видеоОтраслевые событияНовости отраслиПромежуточное и продвинутое SEOМеждународное SEOВакансии и возможностиИсследование ключевых словИсследование ключевых словСоздание ссылокЛокальные спискиЛокальное SEOЛокальная оптимизация веб-сайтовMoz BarMoz LocalMoz NewsMoz ProMoz ToolsOn- Оптимизация страницДругие инструменты SEOПлатный поисковый маркетингПоддержка продуктовОтчетность и аналитикаИсследования и тенденцииОтзывы и рейтингиПоведение при поискеSEO ТактикаТренды поисковой выдачиСоциальные сетиТехническое SEOВеб-дизайнБелое/черное SEO
Связанные вопросы
- schema.org/ItemList" data-nextstart="" data-set="">
- Magento 1.9 SEO. У меня есть страницы продуктов с одинаковым показателем On Page SEO в 90-х годах. Некоторые подтягивают страницу Google 1, некоторые вообще не подтягиваются. Я ищу точное название на этой странице.
У меня есть сайт на Magento 1.9. На сайте представлено около 290 000 артикулов. Я пробую результаты Google SERP. Около 20% ключевых слов появляются на странице 1 с 5-й по 10-ю позиции. 80% не появляются вообще. Когда я оцениваю страницу MOZ, я получаю от 80 до 9 баллов.0 с. Оценка страницы 89 в одной части # может отображаться на первой странице. Идентичная оценка страницы в другой части # не может быть найдена в Google.
Средний и продвинутый SEO | | CTOPDS
0
- Если страница ранжируется в неправильной стране и перенаправляется, эта проблема переходит на новую страницу?
Привет, ребята, у меня странная проблема: Около 2 месяцев назад был запущен новый многоязычный сайт. Он имеет правильные теги hreflang и геотаргетинг в GSC для каждой языковой версии. Мы перенаправили некоторые релевантные страницы (с хорошей PA) с другого сайта нашего клиента.
Выяснилось, что страницы ранжировались не на правильных рынках стран (например, ранжирование страниц en-gb в США). Страницы с нашего сайта, кажется, имеют ту же проблему. Как вы думаете, они унаследовали его из-за редиректов? Возможно ли, что Google со временем разберется, учитывая тот факт, что новые страницы имеют правильные hreflang? Можем ли мы что-то сделать, чтобы повысить ранжирование на рынках нужных стран?
Средний и продвинутый SEO | | ПарижДетское платье
1
- Порядок и множественное совпадение при перенаправлении 301?
Привет, Я переношу один домен в несколько доменов для каждого языка, используя перенаправления apache: Перенаправление 301 /partners http://www.
itris-automation.com/
Перенаправление 301 /partner-si http://www.itris-automation.com/system-integrators-partners
Перенаправление 301 /partner-institute http://www.itris-automation.com/institutional-partners
Перенаправление 301 /fr/ http://www.itris-automation.fr/
Перенаправление 301 /fr/support http:/ /www.itris-automation.fr/support
Перенаправление 301 /privacy?lang=fr http://www.itris-automation.fr/politique-de-confidentialite Перенаправление 301 /de/plc-converter http://www.itris-automation.de/plc-converter
Перенаправление 301 /de/services http://www.itris-automation.de/
Перенаправление 301 /de/plc- качество http://www.itris-automation.de/sps-qualitat .... Однако это не работает должным образом: например, automationsquare.com/privacy?lang=fr перенаправляет на http://www.itris-automation.com/privacy вместо http://www.itris-automation.fr/politique- деконфиденциальность Влияет ли порядок редиректа? Я что-то пропустил? Я видел, что команда [L] может быть полезна, чтобы избежать несоответствия? Спасибо, Лучший, Бенуа.Средний и продвинутый SEO | | 2МСенс
0
- Обработка переадресации 301 при переходе с IIS на Apache Linux
Я перемещаю блог из домена A в IIS в домен B в Linux. Те же посты и страницы - разные домены. Я ищу руководство, статью или инструкции о том, что нужно сделать на стороне IIS, чтобы убедиться, что мы делаем это правильно. Спасибо !
Средний и продвинутый SEO | | ГленнФеррелл
0
- org/ListItem"> 301 перенаправление в Windows IIS. ПОМОЩЬ!
Привет Мой шестилетний домен всегда существовал в четырех формах: http:// www **.**mydomain.com/index.html http://mydomain.com/index.html http://mydomain.com/ http://www.mydomain.com Мой веб-мастер утверждает, что «невозможно» сделать переадресацию 301 с первых трех на четвертую. Мне нужны простые инструкции, чтобы вести его. Сайт размещен на Windows под управлением IIS Вот его обоснование: Это все одна и та же страница, поэтому они не могут перенаправить на себя. Index.html — это страница по умолчанию, которая загружается автоматически, если вы не укажете страницу. Если я добавлю перенаправление в index.html, он просто запустит бесконечный цикл перенаправления. Как видно из настройки IIS, и www.
mydomain, и mydomain.com указывают на одно и то же местоположение ( ПОСМОТРЕТЬ ИЗОБРАЖЕНИЕ ЗДЕСЬ ) _Оба из них используют index.html в качестве документа по умолчанию (СМОТРЕТЬ ИЗОБРАЖЕНИЕ 2 ЗДЕСЬ) _
Средний и продвинутый SEO | | Джипстер
0
- Насколько важна переадресация 301?
Наличие 301 переадресации обязательно для ранжирования, когда дело доходит до www и версия сайта без www ? Я нахожусь внизу страницы 1 по своим основным ключевым фразам, но я не могу выполнить перенаправление 301 на своем веб-хостинге, с которым я работаю уже более года.
Я рассматривал возможность смены веб-хостинга (в настоящее время с Yahoo), но у меня также есть опасения по поводу переноса сайта и возможных последствий из-за изменения IP-адреса. Итак, мои варианты Оставайся на месте Изменить веб-хост Что бы вы порекомендовали?
Средний и продвинутый SEO | | Бронкспад
0
- 301 или 302 перенаправления на мобильный сайт
Когда обнаружено, что мобильное устройство обращается к сайту, оно может перенаправить с www.example.com на m.example.com. Имеет ли смысл использовать здесь редирект 301 или 302? Google выдает 301, но не объясняет, почему (хотя обычно я придерживаюсь фразы "301, если сомневаюсь") .
Похоже, что 302 предотвратит передачу ссылочного веса на мобильный сайт и отображение результатов, оптимизированных для мобильных устройств, в индексе Google. В чем здесь предпочтение?
Средний и продвинутый SEO | | SEOTGT
0
- 301 редирект на 2500 страниц
Привет, У нас есть существующий сайт, сделанный в DNN, и мы воссоздали его на новой платформе (EPiServer), и теперь мы запускаем его. Однако существует более 2500 URL-адресов страниц со старого сайта, которых нет на новом сайте. Как вы думаете, как лучше всего решить эту проблему? Создаем ли мы редирект 301 отдельно для каждой из этих страниц? Эти 2500+ страниц имеют авторитет домена 34-35, и я думаю, будет лучше, если мы их сохраним.