- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
На странице page1.php?id=123 используется вот такая конструкция:
header("HTTP/1.1 404 Not Found");
header ("location: page1.php?id=123&br=321 ");
exit();
Будет ли проиндексирована страница page1.php, если
1.) кроме упоминания о ней в header ("location: page1.php?id=123&br=321 "); ссылка на эту страницу нигде не встречается
2.) ссылка на страницуpage1.php?id=123&br=321 есть на карте сайта и на других страницах сайта
Как быстро будет удалена страница, где использована даная конструкция и как быстро будет занесена в индекс страница page1.php?id=123&br=321 ?
Страници page1.php?id=123 и page1.php?id=123&br=321 по контенту идентичны.
/ru/forum/80658
кажется, схожие вопросы, не правда ли?
header("HTTP/1.1 404 Not Found");
Хммм... Давай оттолкнемся от целей. (надеюсь я их правильно понял из сообщения)
Если цель Удалить из индекса page1.php?id=123, а вместо ее поставить в индекс page1.php?id=123&br=321, то используй 301 редирект, а не header-404
1. Простой редирект:
Redirect 301 / http://www.domainname.ru/
Ставится в файле .htaccess или httpd.conf для Apache, как описано выше. Первый "/" означает, что всё с верхнего уровня сайта, включая все подкаталоги, будет переадресовано (не забывайте поставить последний "/").
Если Вы хотите переадресовать только страницу, сохранив PR старой страницы, можно сделать так:
Redirect 301 /old/old.htm http://www.you.ru/new.htm
где:
/old/old.htm - путь и имя старой страницы
http://www.you.com/new.htm - новый путь и новое имя перемещенной страницы
2. Использование mod_rewrite:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^yourdomain\.ru
RewriteRule ^(.*)$ http://www.yourdomain.ru/$1 [R=permanent,L]Прописывается в файле .htaccess.
3. Редирект с регулярным выражением:
RedirectMatch 301 (.*) http://www.yourdomain.ru$1
Прописывается в файле .htaccess.
(.*) RedirectMatch фактически соответствует регулярным образцам выражения после доменного имени. Таким образом, нельзя выполнить соответствие образца на ^/yourdomain.ru. Однако, можно преобразовать страницы с использованием .html расширения к файлам того же самого названия, но с .php расширением:
RdirectMatch 301 (.*)\.html$ http://www.yourdomain.ru$1.php
Если необходимо сделать различное перенапрваление для отделный страниц, можно использовать следующее:
RedirectMatch Permanent ^/html/resources.html$ http://www.newdomain.com/resources.php
RedirectMatch Permanent ^/html/other_page.html$ http://www.newdomain.com/other_page.php
RedirectMatch Permanent ^/(.*)$ http://www.newdomain.com/"
RedirectMatch Permanent" - это эквивалент "RedirectMatch 301", строска с "*(Wildcard)" должна быть последней в этом списке.
4. Редирект на PHP:
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.newdomain.ru/newdir/newpage.htm");
exit();
Естественно, надо создать страницу, при обращении к которой и будет происходить Редирект, и разместить её на сервере. И лучше укажите HTTP/1.1 (а не HTTP/1.0 или HTTP/0.9, которые не поддерживают виртуальный хостинг)
5. Редирект на ASP:
<%@ Language=VBScript %>
<%
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", "http://www.newdomain.ru/newdir/newpage.asp"
response.end
%>
Размещение аналогично п.4.
Код по п.4. и 5. должен быть с самого начала страницы.
6. Редирект с помощью meta refresh::
<meta http-equiv='refresh' content='0; url=http://new.domain.ru'>
где 0 – задержка переадресации в секундах, new.domain.ru –страница, куда переадресуем. Некоторые броузеры не поддерживают META REFRESH.
7. Редирект с помощью JavaScript:
Вот уж где нет предела творчеству и возможности "по изголяться". Варианты переадресации на JavaScript чаще реализуются с использованием функции setTimeout('функция', задержка).
Например, автоматически сделать Click на кнопке "Submit" формы "searchform" через 0.1 сек после загрузки кода:
setTimeout('document.forms["searchform"].Submit.click()', 100);
На кнопку "Submit" можно повесить любое действие, например, открыть новый url в этом окне. Кстати такое редиректы чаще встречаются при организации Дорвеев(DorWay) - броузер Пользователя будет переадресован на другую страницу, а поисковый робот, который "не понимает" JavaScript, будет индексировать ЭТУ страницу, недоступную Пользователю. На ней Дорвейщики размещают текст, напичканный "нужными" ключевыми словами.
Просто переадресовать на другую страницу - вставить после <body> код на JavaScript:
location="http://www.new.domain.ru";
или
document.location.href="http://www.new.domain.ru";
или
window.location.reload("http://www.new.domain.ru");
или
document.location.replace("http://www.new.domain.ru");
В последнем случае уже нельзя будет вернуться на страницу выполнившую переадресацию, т.к. адрес страницы стирается из history (что часто и требуется).
Если нужна задержка по времени, можно оформить location="http://www.new.domain.ru"; в виде функции и вставить её в setTimeout('функция()', задержка_в_милисек);.
Как разные поисковые системы могут отнестись к такому редиректу, остаётся на их «совести», поэтому для описываемых здесь целей лучше их не применять. Большинство броузеров отработает такую переадресацию как положено, при этом пользователю можно показать дополнительную информацию почему его перемещают по другому адресу.
Поскольку для переноса PR старого сайта(страницы) на новый, может потребоваться несколько недель или месяцев, не уничтожайте старое доменное имя, сайт или страницу, пока это не произойдёт.
Пункты 6 и 7 для SEO не приемлимы. Пользуйся ими только если понимаешь что это такое и зачем оно нужно именно в данном конкретном случае реализации.
И еще. Если нужно чтобы страница page1.php не попала в индекс - запрети ее индексацию.
Покуда у тебя используются ссылки вида page1.php?..... писать в robots.txt Disallow: page1.php не рекоммендуется.
Вместо этого сделай:
Либо отдай ошибку 404
Либо используй мета-тега robots со значением noindex
Либо, если уже есть подобный повторющийся контент, поставь 301 редирект с этой страницы.