sitemapをファイル数の上限なしに作成する方法のphpSitemapNGでうまくいってたんだけど、なぜかページ数が増えてきたら日本語タイトルのページが文字化けするようになってきた。
なおす方法もちょこちょこやってみたけど、めんどーだから他のサイトマップジェネレータ探してみたらいくつかあった。
探した条件は、無料でページ数無制限。
sitemapbuilder.NET
http://www.sitemapbuilder.net/
Windowsで動作。セットアップとかなしで.exe実行するだけで簡単。ただ動作が遅い
Rails3 sitemap_generator
https://github.com/kjvarga/sitemap_generator
はやそーだけどなんだかセットアップがよくわからん。また今度。
google公式?Sitemap Generator
http://sitemap-generators.googlecode.com/svn/trunk/docs/en/sitemap-generator.html
今回は、google公式っぽいジェネレータを使ってみる。
動作条件はPythonが動くサーバならok
セットアップ手順:
・ダウンロード
http://sourceforge.net/projects/goog-sitemapgen/files/latest/download?source=files
・ダウンロードしたファイルを展開して、example_config.xmlを開いて別名で保存。
これが設定ファイルになるから サイト名_config.xml とかが便利。
・サイト名_config.xml に設定を書く
このファイルたくさんのコメントで説明記載されてて、設定する部分は数行だけ
上から順にいくと、
<サイトマップ作成する場所の指定>
base_url=”http://www.ドメイン.com/”
store_into=”/サーバのルートからの絶対パス/sitemap.xml”
verbose=”1″
>
<サイトマップ出力形式の指定>
href=”http://www.ドメイン.com/”
changefreq=”weekly”
priority=”0.5″
/>
<パスの指定>
path=”/サーバのルートからサイトマップを作成するサイトのルートまでの絶対パス/”
url=”http://www.ドメイン.com/”
default_file=”index.html”
/>
<アクセスログの指定>
<accesslog ?path=”/アクセスログ置く場所のサーバルートからの絶対パス/logs/access.log” ? ? ? encoding=”UTF-8″ ?/>
<accesslog ?path=”/アクセスログ置く場所のサーバルートからの絶対パス/logs/access.log.0″ ? ? encoding=”UTF-8″ ?/>
<accesslog ?path=”/アクセスログ置く場所のサーバルートからの絶対パス/logs/access.log.1.gz” ?encoding=”UTF-8″ ?/>
<サイトマップ生成後の置く場所を指定>
<sitemap ? ?path=”/サイトマップ置く場所のサーバルートからの絶対パス/sitemap.xml” />
<サイトマップ作成から除外する項目の指定>
<filter action=”drop” type=”wildcard” pattern=”*/除外するフォルダ名/*” />
<filter action=”drop” type=”wildcard” pattern=”*.除外する拡張子名” />
aaaaa というフォルダはブロック、そのフォルダにあるhtmlファイルは登録する設定
<filter action=”pass” type=”wildcard” pattern=”*/aaaaa/*.html” />
<filter action=”drop” type=”wildcard” pattern=”*/aaaaa/*” />
dropを先の行に書くとaaaaaフォルダ以下すべてがブロックされてしまうから注意。
・設定書いたら保存して、sitemap_gen.py と 書き換えた設定ファイルサイト名_config.xml の2ファイルをサーバの任意の場所にアップロード。
・ssh接続でサーバに接続
local$ ssh <アカウントID>@<ドメイン名>
・sitemap_gen.py を置いた階層まで移動してひとまずテストコマンド入力
python sitemap_gen.py –config=サイト名_config.xml –testing
errorが表示されなければok
・作成されたサイトマップをダウンロードして開いて、余計なものが入っていないか確認。入っていれば除外する項目指定に追加。
完成したら
python sitemap_gen.py –config=サイト名_config.xml
で、googleにサイトマップ通知されてめでたしめでたし。 Pythonの動作ちょっぱや
コメント