Возможно ли перенаправление 301 с помощью javascript или jQuery?

Я запускаю apache2.0 и мне просто интересно, можно ли сделать 301 перенаправление с помощью javascript или jQuery.

У меня есть тег с href в указанное место, и меня просят сделать 301 перенаправление, когда я нажимаю эту ссылку.

Это для SEO, и я пытаюсь найти способ сделать 301 перенаправление на ту же страницу в ссылке без необходимости создавать новую страницу или создавать форму/отправить.

4 ответов


короче нет.

JavaScript работает полностью на стороне клиента. 301 перенаправление должно поступать как ответ от сервера. Значит, вы не можете сделать это без поддержки сервера.


Я знаю, что это старый вопрос, но ответы на самом деле не затрагивают основную проблему, которая была представлена в вопросе, который является перенаправлением 301 для целей SEO (и ответ сегодня может очень сильно отличаться от того, когда вопрос был первоначально задан и ответил).

ответ, что нет, вы не можете 301 перенаправить от клиента, технически корректен, однако (и что более важно) вам не обязательно это делать. Хотя истинный 301 был бы предпочтительным, в случаях как и в этом случае, когда это невозможно (или переход от URL-адресов hashbang к традиционным URL-адресам, например), вопрос в том, действительно ли существует жизнеспособная альтернатива, которая выполняет цель.

поисковая система Land сделала подробный тест возможностей Google в отношении JavaScript, и это соответствующий отрывок из этой статьи:

  1. JavaScript Перенаправляет

мы сперва испытали общее JavaScript перенаправляет, изменяя, как URL был представлены по-разному. Метод, который мы выбрали был окно.функция местоположения. Были проведены два теста: Тест включены абсолютный URL-адрес, приписываемый в окне.функция местоположения. Тест Б используется относительный URL.

результат: переадресации быстро последовали за Google. Из точка зрения индексирования, они были интерпретированы как 301s-конечное состояние URL-адреса заменили перенаправленные URL-адреса в индексе Google.

в последующем тесте мы использовали авторитетную страницу и реализовано перенаправление JavaScript на новую страницу на сайте с точно такое же содержание. Исходный URL ранжирован на первой странице Google для популярных запросов.

результат: как и ожидалось, за перенаправлением последовали Google и исходная страница выпала из индекса. Новый URL был проиндексирован и сразу же занимает ту же позицию по тем же запросам. Этот удивил нас и, кажется, указывает что переадресация JavaScript может (на раза) ведет себя как постоянный 301 редирект с рейтингом точка зрения.

в следующий раз, когда ваш клиент захочет реализовать перенаправление JavaScript для их сайт перемещается, ваш ответ, возможно, не должен быть: "Пожалуйста, не надо". Это оказывается, в этой связи происходит передача сигналов ранжирования. В поддержку этого вывода приводится цитата из рекомендации Google:

" использование JavaScript для перенаправления пользователей может быть законная практика. Для например, при перенаправлении пользователей на внутреннюю страницу после входа в систему для этого можно использовать JavaScript. При изучении JavaScript или другие методы перенаправления для обеспечения соответствия вашего сайта нашим рекомендациям, рассмотрим намерение. Имейте в виду, что 301 редирект лучше, когда перемещении вашего сайта, но вы можете использовать JavaScript-редирект для этого цель, если у вас нет доступа к серверу вашего сайта."


301-это код ответа сервера. Вы не сможете создать 301 перенаправление из jQuery.

вам придется сделать 301 из PHP.


301 редирект постоянные редиректы и в основном ответы сервера http. JavaScript / jQuery-это то, что выполняется на клиенте. Два разных мира.

вместо этого вы можете фактически поместить в href окончательный URL, если вы не можете сделать это на сервере.

или, если вы спрашиваете, можете ли вы перенаправить текущую страницу, да, это возможно с помощью перенаправления META или путем изменения окна.местоположение.

Если вы используете Apache, вы можете использовать и mod_rewrite для перенаправления 301.