Pages

2010/12/01

DokuWikiのサイトマップを有効にしつつ、検索サイトへの通知を止める

社内のDokuWikiのページ一覧が欲しくなったのでSitemap.xmlを出してみました。

"config/dokuwiki.php" で sitemapをenableにしてデバッグ出力を確認してみたらちゃんと作成されて、

そのあと

  • Googleに更新を通知しました

  • Yahooに更新を通知しました

  • Microsoftに更新を通知しました



またれい!

社内のWikiなので無効にしなければな、と思うのであった。


で、編集しました。
ついでに初期はgzで作るので、gzにせずにXMLを直接読めるように変更。

Dokuwikiの "lib/exe/indexer.php" のファンクション、runSitemapperがサイトマップ出力とPing通知をしている為、コメントアウト。

という編集をしたDiffがこちら。
ただのコメントアウトの嵐です、特に難しいことないですね。

# diff lib/exe/indexer.php
257,259c257,259
< // if($conf['compression'] == 'bz2' || $conf['compression'] == 'gz'){
< // $sitemap = 'sitemap.xml.gz';
< // }else{
---
> if($conf['compression'] == 'bz2' || $conf['compression'] == 'gz'){
> $sitemap = 'sitemap.xml.gz';
> }else{
261c261
< // }
---
> }
310,316c310,315
< // print 'runSitemapper(): pinging google'.NL;
< print 'runSitemapper(): pinging google ... skip'.NL;
< // $url = 'http://www.google.com/webmasters/sitemaps/ping?sitemap=';
< // $url .= urlencode(DOKU_URL.$sitemap);
< // $resp = $http->get($url);
< // if($http->error) print 'runSitemapper(): '.$http->error.NL;
< // print 'runSitemapper(): '.preg_replace('/[\n\r]/',' ',strip_tags($resp)).NL;
---
> print 'runSitemapper(): pinging google'.NL;
> $url = 'http://www.google.com/webmasters/sitemaps/ping?sitemap=';
> $url .= urlencode(DOKU_URL.$sitemap);
> $resp = $http->get($url);
> if($http->error) print 'runSitemapper(): '.$http->error.NL;
> print 'runSitemapper(): '.preg_replace('/[\n\r]/',' ',strip_tags($resp)).NL;
319,325c318,323
< // print 'runSitemapper(): pinging yahoo'.NL;
< print 'runSitemapper(): pinging yahoo ... skip'.NL;
< // $url = 'http://search.yahooapis.com/SiteExplorerService/V1/updateNotification?appid=dokuwiki&url=';
< // $url .= urlencode(DOKU_URL.$sitemap);
< // $resp = $http->get($url);
< // if($http->error) print 'runSitemapper(): '.$http->error.NL;
< // print 'runSitemapper(): '.preg_replace('/[\n\r]/',' ',strip_tags($resp)).NL;
---
> print 'runSitemapper(): pinging yahoo'.NL;
> $url = 'http://search.yahooapis.com/SiteExplorerService/V1/updateNotification?appid=dokuwiki&url=';
> $url .= urlencode(DOKU_URL.$sitemap);
> $resp = $http->get($url);
> if($http->error) print 'runSitemapper(): '.$http->error.NL;
> print 'runSitemapper(): '.preg_replace('/[\n\r]/',' ',strip_tags($resp)).NL;
328,334c326,331
< // print 'runSitemapper(): pinging microsoft'.NL;
< print 'runSitemapper(): pinging microsoft ... skip'.NL;
< // $url = 'http://www.bing.com/webmaster/ping.aspx?siteMap=';
< // $url .= urlencode(DOKU_URL.$sitemap);
< // $resp = $http->get($url);
< // if($http->error) print 'runSitemapper(): '.$http->error.NL;
< // print 'runSitemapper(): '.preg_replace('/[\n\r]/',' ',strip_tags($resp)).NL;
---
> print 'runSitemapper(): pinging microsoft'.NL;
> $url = 'http://www.bing.com/webmaster/ping.aspx?siteMap=';
> $url .= urlencode(DOKU_URL.$sitemap);
> $resp = $http->get($url);
> if($http->error) print 'runSitemapper(): '.$http->error.NL;
> print 'runSitemapper(): '.preg_replace('/[\n\r]/',' ',strip_tags($resp)).NL;

0 件のコメント:

コメントを投稿