Wikipedia는 어떻게 Sitemap을 생성합니까?


9

이 주제는 Wikipedia의 크기 때문에 관심이 있습니다. 작은 사이트에서 주기적으로 사이트 맵을 업데이트하기 위해 일부 크론을 만드는 것이 쉽지만 큰 사이트는 어떻습니까? 그래서:

Wikipedia는 어떻게 Sitemap을 생성합니까?

답변:


9

PHP 스크립트에 의해 동적으로 생성됩니다. 대규모 사이트의 경우 변경 사항을 확인하고 변경된 내용 만 생성하거나 XY 분 / 시간 / 일마다 생성하는 것이 좋습니다. 인프라에 따라 다릅니다.

필요한 정보는 모두 데이터베이스에 있으므로 그렇게 어려운 일이 아닙니다.

그리고 여기 증거가 있습니다 : http://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/maintenance/generateSitemap.php?view=log / http://www.mediawiki.org/wiki/Manual:GenerateSitemap. PHP

편집 : 아 그리고 이것은이 주제에 대해서도 흥미로울 수 있습니다 :


PHP 코드를 사용하여 대규모 사이트에 대한 사이트 맵을 생성 할 수 있습니까? "동적"이라는 단어는 사이트 맵이 다소 자동으로 생성되고 필요할 때 코드를 약간 변경한다는 의미입니까?

"필요한 정보가 모두 데이터베이스에 있으므로 어려운 작업이 아닙니다"라는 문장을 명확하게 설명 할 수 있습니까? 데이터베이스는 어디에서 볼 수 있습니까?

그는 모든 정보가 데이터베이스 기반 미디어 위키에 있다는 것을 의미한다고 생각합니다. 위키 백과의 sysadmin 또는 DBA가 아니라면 DB에 직접 액세스 할 수 없습니다.
Cian

3
또한 OP는 '대형'사이트에서 Sitemap을 생성하는 방법을 연구하고 있다고 생각합니다. Wikipedia의 경우 모든 페이지가 데이터베이스에서 제공되는 RDBMS 기반 (MySQL)입니다. 따라서 DB는 모든 페이지를 알고 있으므로이를 수행하려면 간단한 PHP 스크립트 (위의 Subversion에서 링크 됨)가 필요합니다. 다른 기술로 구동되는 다른 사이트의 경우 필요한 접근 방식이 다르다는 것을 알게 될 것입니다. 마지막으로 Wikipedia에서 데이터베이스를 다운로드하여 게시했거나 최소한 .SQL 파일로 콘텐츠를 게시했는지 확인했습니다.
nixgeek

1
다음은 [Wikipedia DB Dump] [1] :-) [1] : en.wikipedia.org/wiki/…
Gregor

1

나는 우리 웹 사이트에 대한 사이트 맵을 만드는 작업에 직면했다. Wikipedia의 크기는 아니지만 여전히 수십만 페이지에 달하며 그 중 약 5 %가 매일 변경, 추가 또는 제거됩니다.

모든 페이지 참조를 단일 파일에 넣으면 파일이 너무 커지므로 섹션으로 나누어야했습니다. 사이트 맵 인덱스는 17 개의 다른 섹션 중 하나에 대한 쿼리 문자열이있는 aspx 페이지를 가리 킵니다. 쿼리 문자열에 따라 페이지는 데이터베이스에 존재하는 개체에 따라 수천 페이지를 참조하는 xml을 반환합니다.

따라서 사이트 맵은 주기적으로 생성되는 것이 아니라 누군가 요청하면 즉시 생성됩니다. 데이터베이스 검색을 캐싱하는 시스템이 이미 있으므로 사이트 맵에 대한 데이터를 가져 오는 데 사용됩니다.


왜 공감해야합니까? 잘못되었다고 생각하는 것이 무엇인지 설명하지 않으면 답변을 개선 할 수 없습니다.
Guffa

1

사이트 맵 생성 코드 는 MediaWiki 핵심 마스터에 있으며 확실히 사이트 맵을 생성하기 위해 선택한 옵션이지만 Wikipedia가 실제로 켜져 있다는 증거는 보이지 않습니다. robots.txt 파일은 사이트 맵을 가리 키지 않습니다.

또한 Wikimedia 프로젝트에서 실행되는 유지 관리 스크립트는 꼭두각시로 제어되며 꼭두각시 저장소에는 generateSitemap.php 인스턴스없습니다 . 마지막으로 Wikimedia 위키덤프 에는 사이트 맵이없고 " Yahoo에 대한 초록 "도 있습니다.

어쨌든 Wikipedia는 앱 서버 앞에서 오징어 캐시를 실행합니다. 페이지의 만료 시간을 조정하여 사이트 맵 업데이트 빈도를 제어 할 수 있습니다.

또한 Wikipedia에서 색인 생성을 위해 수행하는 모든 작업은 Wiki에 적합한 모델이 아닙니다. Google은 Wikipedia에 대한 특별한 연락처 / 거래 / 처리 기능이 있기 때문에 최근 예를 참조하십시오 .


+1 스마트 한 관찰

1
robots.txt가 사이트 맵을 참조 할 것으로 예상 할 실제적인 이유가 없으므로 이러한 참조가 없다고해서 실제로 아무 것도 증명되지는 않습니다.
John Gardeniers

0

긍정적이지 않지만 MediaWiki 용 Google Sitemap 확장 프로그램을 사용한다고 생각 합니다. 이것은 Sitemaps 의 Wikipedia 페이지에서 지원됩니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.