Fisana 700 03/03/09 08:49 Проблема в том, что если в индекс попадают несуществующие форумные url, под разными адресами в индексе дублируется сообщение об ошибке.А такие дубли – не есть гуд. С сайтом все просто, там 404 настроишь, и все...А вот как форум заставить перенаправлять ошибочные внутренние адреса на страницу 404, не знаю.Помогите, плиз. Поделиться сообщением Ссылка на сообщение
Ph-A 395 03/03/09 09:39 С сайтом все просто, там 404 настроишь, и все...А вот как форум заставить перенаправлять ошибочные внутренние адреса на страницу 404, не знаю.Они же и так перенаправляются. Чем плоха 404 страница сайта? Поделиться сообщением Ссылка на сообщение
Fisana 700 03/03/09 10:13 Они перенаправляются на страницу об ошибке форума, если url корректный.Например сейчас в индексе есть такие URL Надо, чтобы выводило на страницу сайта 404.html, а не на ошибку форума.Хотя бы поисковых ботов выводило.Юзеров-то ладно, пусть на форуме оставляет. Поделиться сообщением Ссылка на сообщение
firmont 0 04/26/09 23:05 Тоже такая же проблема, хотел решить её, у меня запрос один на 1 место в гугле и яндексе стоит уже 2 емсяцв, хотя странички не существует, выдаёт ошибку форума, и поисковик её не удаляет. вот ещё кое что нашёл , но оно для 2.1 - может кто попрбует или переделает под 2.3 в index.php наити.//-------------------------------- // Do we have permission to view // the board? //-------------------------------- if ($ipsclass->member['g_view_board'] != 1) { $ipsclass->Error( array( 'LEVEL' => 1, 'MSG' => 'no_view_board') ); } заменить на. //-------------------------------- // Do we have permission to view // the board? //-------------------------------- if ($ipsclass->member['g_view_board'] != 1) { $ipsclass->boink_it("http://www.yoursite.com/forum/index.php?act=idx"); } в sources/classes/class_session.php - наити. $this->ipsclass->Error( array( 'LEVEL' => 1, 'MSG' => 'you_are_banned', 'INIT' => 1 ) ); Заменить на $this->ipsclass->boink_it("http://www.yoursite.com/forum/index.php?act=idx"); Всё!!! Дополнительный текс. Redirecting the banned members. Replace the url in the new codes with your forum address but with a small error on it (e.g. change the "forums" folder to "forum"). Remember, the point here is to redirect them to an error page. Alternatively, you can send them to another site or even another page created by you. Your banned members will not understand what is happening and maybe think that your forums are offline or no longer exist, leaving you in peace for a while. Upload the files to your server. Upload the files back to your FTP server and you're done with this small modification. If you want to test this modification, create a test member account in the Banned group and log in with his details. You should be redirected to the page you stated in the steps 1 and 2. Orignal Article Author: Cointreau Поделиться сообщением Ссылка на сообщение
WildRAID 2 04/27/09 11:41 В /sources/ipsclass.php Найти:$html = $this->compiled_templates['skin_global']->Error( $msg, $em_1, $em_2, 1); Заменить на:#404 for search bots if( $this->is_bot ) { $this->boink_it('адрес страницы 404'); } else { $html = $this->compiled_templates['skin_global']->Error( $msg, $em_1, $em_2, 1); } При возникновении любых стандартных ошибок ботов будет перекидывать на страницу 404. Поделиться сообщением Ссылка на сообщение
Fisana 700 04/27/09 11:45 Спасибо большое :(Тут уже вставила. Поделиться сообщением Ссылка на сообщение
siv1987 2628 05/05/09 19:52 что то я не понял как вся эта система работает... Так нужно было настроить? #404 for search bots if( $this->is_bot ) { $this->boink_it('/404.html'); } else { $html = $this->compiled_templates['skin_global']->Error( $msg, $em_1, $em_2, 1); } Поделиться сообщением Ссылка на сообщение
WildRAID 2 05/05/09 19:59 Без подчеркивания перед http только. Поделиться сообщением Ссылка на сообщение
siv1987 2628 05/05/09 20:46 Без подчеркивания перед http только.ну это понятно. Вот только не пойму в чем весь прикол. Кто туда будет перенаправляться? Боты? Но ведь при вводе ошибочного урл и так включается страничка с кодом 404. Или изменения будут работать для таких вот случаях - _http://ipbskins.ru/forum/tags/test.html ? Нужно в данном случае запрещать /404.html или нет? Поделиться сообщением Ссылка на сообщение
Fisana 700 05/05/09 21:31 Она будет работать для ботов вместо сообщения об ошибке форума.Ошибка форума индексируется многократно при любых неправильных внутренних url форума.Получаются дубли.Вот эти дубли теперь для ботов заменятся нормальной законной ошибкой 404./404.html запрещать не нужно.Боты ее знают, и это теперь одна на все про все страничка вместо десятков url с форумной ошибкой. Поделиться сообщением Ссылка на сообщение
Атаман 463 04/12/13 19:32 Она будет работать для ботов вместо сообщения об ошибке форума.Ошибка форума индексируется многократно при любых неправильных внутренних url форума.Получаются дубли.Вот эти дубли теперь для ботов заменятся нормальной законной ошибкой 404./404.html запрещать не нужно.Боты ее знают, и это теперь одна на все про все страничка вместо десятков url с форумной ошибкой. В портале новом можно вписывать 404 ошибку. Вот пример кода для создания) <!--?php header("HTTP/1.1 404 Not Found"); ?--> <title>404 - Название</title> <h1><font size="7">404: Not found</font></h1> <br /> <h2><font size="4">Такой страницы не существует</font></h2> 1 Поделиться сообщением Ссылка на сообщение
kgb 35 05/10/13 23:10 Она будет работать для ботов вместо сообщения об ошибке форума.Ошибка форума индексируется многократно при любых неправильных внутренних url форума.Получаются дубли.Вот эти дубли теперь для ботов заменятся нормальной законной ошибкой 404./404.html запрещать не нужно.Боты ее знают, и это теперь одна на все про все страничка вместо десятков url с форумной ошибкой. Только теперь в индексе все равно будет эта страничка, потому как сервер отдает - HTTP/1.1 200 OK. А надо HTTP/1.1 404 Not Found. У себя (но у меня ipb 2.3.х) решил так. Ищем в файлах /sources/action_public/topics.php и /sources/action_public/forums.php строчки $this->ipsclass->Error( array( 'LEVEL' => 1, 'MSG' => 'is_broken_link') ); и выше добавляем header("HTTP/1.1 404 Not Found"); теперь бот понимает, что такой странички нет и не должен включать ее в индекс В 3 линейке, думаю, можно по аналогии проблему решить. Поделиться сообщением Ссылка на сообщение
siv1987 2628 05/11/13 09:28 В 3 линейке, думаю, можно по аналогии проблему решить.В третьей линейки отдача кодов уже встроено по умолчанию. У себя (но у меня ipb 2.3.х) решил так. Ищем в файлах /sources/action_public/topics.php и /sources/action_public/forums.php строчкиТак как и в том и в другом случае используется метод метод Error класса ipsclass, можно было сделать проще, и сделать отдачу статуса в этом методе.А если делать по аналогии с 3x добавить дополнительный входящий параметр в Error c кодом статуса, и добавить где вызывается Error нужные статусы. Поделиться сообщением Ссылка на сообщение
siv1987 2628 07/05/13 07:28 Они же и так перенаправляются.Перенаправляются только несуществующие файлы. Параметры (QUERY STRING) не учитываются, а IPB работает именно через параметры.Т.е. физически /index.php?showtopic=99999 сервером будет отдаваться код 200, так как файл index.php существует, хотя самой темы showtopic=99999 на форуме нету (в тройке теперь уже отдается 404 код). Поделиться сообщением Ссылка на сообщение
Атаман 463 07/07/13 19:12 В Новом IP.Content можно делать 404 страницу, но google ее не понимает. Когда мы проверили несколько URL из вашего файла Sitemap, то обнаружили, что роботу Google не удалось открыть некоторые URL из-за ошибки статуса HTTP. Все доступные URL будут по-прежнему отправляться. Sitemap: сайт.ru/forums/index.php?app=core&module=global§ion=sitemap&sitemap=sitemap_core_content_pages.xml.gzОшибка HTTP: 404URL: сайт.ру/404.html Поделиться сообщением Ссылка на сообщение