Intellect Board — cистема управления сайтом

Построение сайта на основе форума

Intellect Board — cистема управления сайтом »   Техническая поддержка версии 2.22 »   Не удаётся сгенерить Sitemap XML
RSS

Не удаётся сгенерить Sitemap XML

Неправильно определяется база страницы

Текущий рейтинг темы: Нет
Выводить сообщения

<<Назад  Вперед>>Модераторы: aerograf, wsxПечать
 
Dearheart
Почетный участник


Откуда: Нижний Новгород
Всего сообщений: 130
Рейтинг пользователя: 4


Ссылка


Дата регистрации на форуме:
27 дек. 2007
С такой проблемой столкнулся: захотел сгенерить карту сайта в XML формате с помощью сторонних генераторов. Настроил, подключил, имя сайта скормил - а результат оказался ужасным: из 2000 сканированных страниц, хорошими были только 100, все остальные - страницы с кодом 404.
Стал разбираться: у меня включены хурлы, поэтому адреса внутренних ссылок должны быть вида домен/раздел/тема/страница.html тоесть должно быть что-то типа такого: домен.ру/2/10/0.html а вместо этого большинство ссылок оказалось такими: домен.ру/2/10/4/15/0.html Понятно, что таких страниц не существует, поэтому и возвращался статус 404.
Причина этого кроется в том, что все адреса на страницах формируются в относительном виде: 2/10/0.html, а корневой путь задаётся для каждой страницы тэгом base href="домен.ру/" Если сложить эти две части, то адрес должен быть правильным. Но видимо роботы некорректно обрабатывают тег base и поэтому у них относительный адрес ссылок склеивается с относительным адресом страницы и получается ерунда.

Одним из решений может быть указание всех ссылок не относительно текущего адреса, а относительно корня, например так: /2/10/0.html Но это наверное сложно исправить, так как ссылки формируются в разных местах кода, и ещё неизвестно что в этом случае окажется корневым адресом - домен или адрес сервера.

Второй вариант: поскольку у нас все ссылки задаются относительно корня форума, который один и тот-же для всех страниц, то может быть есть возможность изменить настройки сервера так, чтобы он по дефолту всегда в качестве base URI выдавал не текущий адрес страницы, а адрес форума. Можно ли эту настройку прописать в .htaccess? Что-то у меня не получилось. Подскажите, какой командой в htaccess это можно сделать?

---
Форум для родителей детей с ВПС: http://forum.dearheart.ru
vikont
Начинающий

vikont
Откуда: С просторов Донбасса
Всего сообщений: 34
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
27 фев. 2010
У меня версия IntB 2.22, взята с SVN + index.php взят из архива на том же сайте!
.htaccess стандартный с настройками по умолчанию. Включен Hurl и все замечательно индексируется и создается нормальная карта.
Возможно проблема в самой версии, какая у вас версия IntB?
Dearheart
Почетный участник


Откуда: Нижний Новгород
Всего сообщений: 130
Рейтинг пользователя: 4


Ссылка


Дата регистрации на форуме:
27 дек. 2007
У меня версия 2.22, мой форум заработал на ней как только она появилась, затем эта версия была проапдечена до той, которая лежит на SVN, но поскольку между версиями нет полной совместимости, то пришло всё совмещать вручную, и поэтому некоторые функции получились обновлённые, а некоторые нет.
Но в данном случае, проблема не с форумом, так как на тображаемых страницах нет проблем ссылками. Проблемы только возникают у роботов, из-за того что они воспринимают страницу не так, как обычный браузер, и используют неправильный базовый адрес.
Кстати, vikont, при создании карты эта тулза (генератор Sitemap) чего нибудь писала в логах? Потому что генератор мог просто молча выкинуть страницы со статусом 404 и тогда проблема будет не замента, однако это приведёт к лишней загрузке сервера, так как генератор каждую неправильную страницу всё равно пытается запросить.

---
Форум для родителей детей с ВПС: http://forum.dearheart.ru
Gram
Администратор

Gram
Откуда: Нижний Новгород
Всего сообщений: 1011
Рейтинг пользователя: 38


Ссылка


Дата регистрации на форуме:
23 июля 2003
Dearheart, может просто генератор кривой?
Dearheart
Почетный участник


Откуда: Нижний Новгород
Всего сообщений: 130
Рейтинг пользователя: 4


Ссылка


Дата регистрации на форуме:
27 дек. 2007
Может быть, попробую поискать ещё какой нибудь на просторах интернета.

---
Форум для родителей детей с ВПС: http://forum.dearheart.ru
Dearheart
Почетный участник


Откуда: Нижний Новгород
Всего сообщений: 130
Рейтинг пользователя: 4


Ссылка


Дата регистрации на форуме:
27 дек. 2007
Чем искать что-то на просторах интернета, решил сам сгенерить sitemap. Оказалось несложно - поместите приаттаченный файл в корень сайта и потом вызывайте его через хттп://ваш_сайт/sitemap.php и проверьте правильность сгенерированных ссылок - возможно слэши нужно будет поправить. Это карта не полная, там нет ссылок на разделы и страницы, но всё же это лучше чем ничего. Яндексу такая карта нравится.


Если кто поможет усовершеннствовать код - буду рад. Нужно сделать два дополнения:
1. добавить запрос, который будет возвращать ссылки на все разделы форума доступные гостям
2. добавить способ получения ссылок на отдельные страницы темы для больших тем - это наверное сложнее всего, так как количество сообщений на одной странице может меняться.

Прикрепленный файл (sitemap.php, 3480 байт, скачан: 630 раз)
---
Форум для родителей детей с ВПС: http://forum.dearheart.ru
<<Назад  Вперед>>Модераторы: aerograf, wsxПечать
Intellect Board — cистема управления сайтом »   Техническая поддержка версии 2.22 »   Не удаётся сгенерить Sitemap XML
RSS

1 посетитель просмотрел эту тему за последние 10 минут
В том числе: 1 гость, 0 скрытых пользователей

Последние RSS
Ограничение доступа
не отображаются разделы
Архив версий
Установка стиля на Intellect Board 2.22
Завершилась работа над новой версией 3.00

Самые активные 5 тем RSS


Время выполнения скрипта: 0.0671. Количество выполненных запросов: 17, время выполнения запросов 0.0000
Creative Commons License Rambler's Top100 Rambler's Top100 Рейтинг@Mail.ru Valid HTML 4.01 Transitional Valid CSS!