В веб-отладчике HTML-страница перенаправления 301 отображается как:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="http://www.website.com/webpage.htm">here</a>.</p>
</body></html>
Я должен перенаправить HTML-страницы без поддержки сервера. Если я заменю html-страницы приведенным выше кодом, будет ли это работать так же, как написание перенаправлений 301 в .htaccess на apache? Я посмотрел это в Google, но сайты, говорящие о перенаправлениях 301, не охватывали эту опцию для перенаправления html-страниц.
html
301-redirect
JMC
источник
источник
Нет, простая замена HTML вашим примером не даст желаемого эффекта. Он просто покажет эту страницу пользователю, поскольку Apache отправит вместе с ним код состояния «200». Пользователи смогут щелкнуть ссылку, чтобы найти страницу, но это не произойдет автоматически, и пауки не будут знать, что вы хотите осуществить постоянное перенаправление ресурса.
Вам нужно будет использовать правильную директиву Redirect или _mod_rewrite_ либо в .htaccess, либо в ваших conf- файлах Apache .
В качестве альтернативы, если вы на самом деле используете PHP или что-то подобное, вы можете установить код возврата 301, вывести заголовок ответа Location и тогда ваше решение на основе страницы будет работать. В PHP это будет выглядеть примерно так:
источник
Согласитесь с Hissohathair в том, что ваш подход не будет фактически перенаправлять. Пользователи могут знать, что нужно щелкнуть ссылку, но исходная страница по-прежнему будет возвращать обычный код состояния «200» и будет отображаться в результатах поиска (вероятно, не совсем то, что вам нужно).
Чтобы поддерживать рейтинг страницы, чрезвычайно важны 301 код состояния. Добавление мета-тегов обновления также является хорошим вариантом и может помочь в большинстве случаев (согласно ответу Джона), но вы не можете быть уверены, что поисковые системы примут его как редирект 301 в будущем. Добавление правильных перенаправлений в ваш .htaccess (или файлы Apache conf) было бы вашим лучшим вариантом, чтобы гарантировать отправку кода состояния 301.
Редактировать:
=======================
Для веб-сайта IIS7, если установлен модуль перезаписи URL IIS, вы можете создавать правила перенаправления в файле web.config для сайта. Эти правила будут применяться и к файлам .html. Больше информации здесь:
http://learn.iis.net/page.aspx/461/creating-rewrite-rules-for-the-url-rewrite-module/
=======================
Другой альтернативой, если ваш веб-хост не имеет возможностей .htaccess / mod_rewrite, может быть изменение веб-хоста, который вы используете, где вы можете настроить перенаправления на стороне сервера. Пока сайт правильно перемещается, он должен быть достаточно плавным для ваших пользователей. Такой подход был бы применим только в крайних случаях, если поддержание рейтинга страницы крайне важно.
источник