русский
Germany.ruForen → Архив Досок→ Webdesign und Hosting

Переадресация с мёртвых ссылок.

249  
paravosik местный житель15.06.09 18:59
paravosik
NEW 15.06.09 18:59 
После изменения структуры сайта, куча уже проиндексированных линков умерло, как то можно настроить с них переадресацию на новые линки?
#1 
GANDJUBAS Ганджубас15.06.09 22:11
GANDJUBAS
  Kastrator свой человек16.06.09 07:32
NEW 16.06.09 07:32 
in Antwort paravosik 15.06.09 18:59
или .htaccess , как я понимаю..
ErrorDocument 404 http://www.paravosik.de/index.html
#3 
paravosik местный житель16.06.09 10:07
paravosik
NEW 16.06.09 10:07 
in Antwort Kastrator 16.06.09 07:32
А можно по подробней, пожалуйста, а то пока ничего не понятно.
#4 
  Kastrator свой человек16.06.09 10:15
NEW 16.06.09 10:15 
in Antwort paravosik 16.06.09 10:07
http://www.seoschool.ru/website-promotion/keeping-visitors-through-404-errors.html
Почитай тут.
в двух словах, если страницы не существует, открывается индекс, ну или любая другая тобои установленная страница
#5 
  scorpi_ завсегдатай16.06.09 10:59
16.06.09 10:59 
in Antwort Kastrator 16.06.09 10:15, Zuletzt geändert 19.06.09 19:46 (scorpi_)
Автору по-моему совсем не это нужно. Допустим у него был скрипт /login.php, затем он перевёл сайт на какой-нибудь фреймворк, и адрес скрипта поменялся на /index.php/user/login. Тогда ему нужна не 404-страница, а 301 - Moved Permanently. То бишь ему надо нечто вроде:
В ответ на:
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} /login.php
RewriteRule .* /index.php/user/login [R=301,L]
</ifmodule>


#6 
  scorpi_ завсегдатай16.06.09 11:01
NEW 16.06.09 11:01 
in Antwort scorpi_ 16.06.09 10:59, Nachricht gelöscht 19.06.09 19:46 (scorpi_)
#7 
  Kastrator свой человек16.06.09 11:06
NEW 16.06.09 11:06 
in Antwort scorpi_ 16.06.09 11:01
у тебя повидимому броузер нестандартный, или подмена хидера идет ))))
У меня так тоже было, поставил ModifyHeaders и тож самое получил:)
#8 
GANDJUBAS Ганджубас16.06.09 11:14
GANDJUBAS
NEW 16.06.09 11:14 
in Antwort paravosik 16.06.09 10:07
В ответ на:
А можно по подробней, пожалуйста, а то пока ничего не понятно.

В 2х словах. При работе с Apache-сервером, можно менять его определенные настройки на уровне отдельных папок.
для этого в папку сохраняется файл с названием .htaccess.
В этот файли прописываются настройки. Если тебе не нужна какая-та логика переадресации ссылок, то можно туда прописать просто ErrorDocument, как написал Kastrator.
Это значит, что все ссылки ведущие в никуда будут автоматом переадресовываться сервером на указанную.
Если же надо сохранить определенную логику переадресации, то можно сделать, как я уже писал в топике, на который дал ссылку.
Это значит, что все несуществующие адреса будут перенаправляться в твой скрип, в котором ты можешь что-то делать в зависимости от начальной ссылки.
#9 
  scorpi_ завсегдатай16.06.09 11:15
NEW 16.06.09 11:15 
in Antwort Kastrator 16.06.09 11:06
В ответ на:
у тебя повидимому броузер нестандартный, или подмена хидера идет ))))
У меня так тоже было, поставил ModifyHeaders и тож самое получил:)

Я не собираюсь ради программистов-идиотов ставить ненужные мне расширения. Код не смотрел, но очевидно, что они делают браузер-детекшн вместо фича-детекшн, а новую версию лисы не узнают... Я ж говорю - идиоты.
#10 
  Kastrator свой человек16.06.09 11:29
NEW 16.06.09 11:29 
in Antwort scorpi_ 16.06.09 10:59
Я тут просто перевел , сори.
**************************************************
Автору по-моему совсем не это нужно. Допустим у него был скрипт /login.php, затем он перевёл сайт на какой-нибудь фреймворк, и адрес скрипта поменялся на /index.php/user/login. Тогда ему нужна не 404-страница, а 301 - Moved Permanently. То бишь ему надо нечто вроде:
В ответ на:

<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} /login.php
RewriteRule .* /index.php/user/login [R=301,L]
</ifmodule>

*********************************************************
#11 
paravosik местный житель16.06.09 11:40
paravosik
NEW 16.06.09 11:40 
in Antwort Kastrator 16.06.09 11:29
В общем да, я хочу чтоб не просто мёртвые страницы работали не выдавая ошибку 404, а чтоб их рейтинг перешёл на новы страницы. Гугля пишет что нужно использовать код 301, но у меня всё никак не получается с этим доком .htaccess. Не с одним из кодов. Нифига не работает. Попрбывал так как пишут на странице по твоему линку ErrorDocument 404
/filename.html
вот что получилось.
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, webadmin@kundenserver.de and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.
#12 
  Kastrator свой человек16.06.09 11:46
NEW 16.06.09 11:46 
in Antwort paravosik 16.06.09 11:40
Похоже что твой хостер не любит "чужие" htaccess.
посмотри в админке, может имееется возможность htaccess изнутри редактировать..
..
Но точно не знаю..
#13 
paravosik местный житель16.06.09 11:48
paravosik
NEW 16.06.09 11:48 
in Antwort Kastrator 16.06.09 11:29
Так с 404 получилось, заработало!!!
А как быть с 301?
#14 
paravosik местный житель16.06.09 11:55
paravosik
NEW 16.06.09 11:55 
in Antwort Kastrator 16.06.09 11:46
В ответ на:
Похоже что твой хостер не любит "чужие" htaccess.

Ну низнаю, может и не любит, но с 404 получилось когда прописал полный адрес с http и т.д.
А вот с 301 не как понять не могу.....
#15 
  Kastrator свой человек16.06.09 11:56
NEW 16.06.09 11:56 
in Antwort paravosik 16.06.09 11:48
ErrorDocument 404 ***************
номер ошибки-то любой можно
#16 
paravosik местный житель16.06.09 12:25
paravosik
NEW 16.06.09 12:25 
in Antwort Kastrator 16.06.09 11:56
Вот нашёл, вроде бы работает, посмотрим.
В ответ на:
Чтобы переадресовать только страницу, сохранив PR старой страницы:
Redirect 301 /old/old.htm http://www.you.com/new.htm
где:
/old/old.htm - путь и имя старой страницы

#17