Тема мене цікавить через розмір Вікіпедії. Створити кілька кронів, щоб періодично оновлювати мапи сайту на невеликому веб-сайті, може бути легко, але як бути з великим? Тому:
Як Wikipedia створює свою мапу сайту?
Тема мене цікавить через розмір Вікіпедії. Створити кілька кронів, щоб періодично оновлювати мапи сайту на невеликому веб-сайті, може бути легко, але як бути з великим? Тому:
Як Wikipedia створює свою мапу сайту?
Відповіді:
Він динамічно генерується за допомогою сценарію PHP. Для великих сайтів, мабуть, краще перевірити зміни та створити лише те, якщо щось змінилося - або генерувати їх лише кожні XY хвилин / години / дні. Це залежить від інфраструктури.
Інформація, яка необхідна, є у базі даних, тому це не таке складне завдання.
І ось доказ: http://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/maintenance/generateSitemap.php?view=log / http://www.mediawiki.org/wiki/Manual:GenerateSitemap. php
Редагувати: А, і це також може бути цікаво для цієї теми:
Я зіткнувся із завданням створити карту сайту для нашого веб-сайту на деякий час назад. Хоча це не розмір Вікіпедії, це все ще близько ста тисяч сторінок, і близько 5% з них щодня змінюються, додаються або видаляються.
Оскільки розміщення всіх посилань на сторінку в одному файлі зробило б це занадто великим, я повинен був розділити їх на розділи. Індекс карти сайту вказує на сторінку aspx із рядком запиту для одного з 17 різних розділів. Залежно від рядка запиту, на сторінку повертається xml, що посилається на кілька тисяч сторінок, на основі яких об'єктів існує в базі даних.
Отже, карта сайту не створюється періодично, натомість вона створюється на ходу, коли хтось її вимагає. Оскільки у нас вже є система кешування пошуку в базі даних, це, звичайно, також використовується для отримання даних для карти сайту.
Хоча код генерації мапи сайту є основним майстром MediaWiki і, безумовно, буде обраний варіант для створення карти сайту, я не бачу жодних доказів того, що Вікіпедія насправді ввімкнула його. Файл robots.txt не вказує на будь-які карти сайту.
Крім того, будь-який сценарій технічного обслуговування, запущений на проектах Wikimedia, контролюється маріонеткою, і в маріонетковому сховищі немає жодного примірника originSitemap.php . Нарешті, немає жодної мапи сайту на дампах для жодної вікі Wikimedia , в той час як є " тези для Yahoo ".
У будь-якому випадку, Вікіпедія запускає кеші кальмарів перед їх серверами додатків. Вони можуть контролювати, як часто оновлюється їх карта сайту, регулюючи термін дії сторінки.
Більше того, те, що робить Wikipedia для індексації, не є хорошою моделлю для вашої вікі, оскільки Google має спеціальні контакти / угоди / обробку Вікіпедії, див. Останній приклад .
Я не позитивний, але думаю, що вони використовують розширення Google Sitemap для MediaWiki. Це підтримується сторінкою Вікіпедії на Картах .