大阪府摂津市JR千里丘駅周辺密着情報!!

Google Sitemap Generator 1.4 を可能な限り簡単に解説したいGoogle Sitemap Generator 1.4 を可能な限り簡単に解説したい

[ Google Sitemap 利用への道 TOP ]

  Google に 『サイトマップ (Beta) ヘルプ:サイトマップ生成ツールを使用する場合』 というページが用意されているが、専門用語が多かったり英語の直訳だったりで理解しずらいので、可能な限り簡単にまとめてみる。 ただし、『さくらインターネット』 で利用することが前提。


入手方法 (2006/05/24現在)入手方法 (2006/05/24現在)

  1. Google サイトマップ (Beta) ヘルプ』 の 『1. サイトマップ生成ツールのプログラム ファイルをダウンロードする』 にあるリンクをクリック
  2. 何やら派手なページが表示されるので最新のファイル (zip が無難) をクリック
  3. もっと派手な画面が表示され、各国のサーバがリストアップされているが、どれでも構わないので Download をクリック
  4. どれをクリックしても同じような画面が表示され、勝手にダウンロードするか聞いてくる
    • ここでダウンロードするか聞かれない場合は画面上部にある文字列をクリック
  5. [保存(S)] をクリックすると以下のダイアログが表示されるので好きな場所を選択
  6. ダウンロードが始まる


入手した sitemap_gen-1.4.zip の解凍入手した sitemap_gen-1.4.zip の解凍

  1. ダウンロードしたファイルは圧縮されているので解凍を行う
  2. 解凍するためのツールが必要になるが、+Lhaca を使うのが手っ取り早いのではないかと
    入手先 http://park8.wakwak.com/~app/Lhaca/
  3. 上記 URL のトップページにある Lhaca074.EXE をクリックしてダウンロード
  4. ダイアログの操作方法は上記 Google Sitemap Generator の入手方法と同様
  5. ダウンロードした Lhaca074.EXE をダブルクリックするとインストール先を聞いてくるので
  6. 何も考えず [OK] をクリック
  7. デスクトップ画面に 2. と同じアイコンが表示される
  8. 上記 Google Sitemap Generator の入手方法でダウンロードした sitemap_gen-1.4.zip を Lhaca のアイコンにドラッグ&ドロップ
  9. 以上で解凍完了

必要なファイルと不必要なファイル必要なファイルと不必要なファイル

  1. sitemap_gen-1.4.zip を解凍すると以下のファイルが現れる
  2. 実際に必要なファイルは赤枠の2つだけなので残りは削除しても何の問題もなし

sitemap_gen.py の変更sitemap_gen.py の変更

  1. sitemap_gen.py をテキストエディタで開く
    • sitemap_gen.py をダブルクリックすると、どのアプリケーションで開くか聞いてくる
    • Notepad (メモ帳) で開けば編集可能
    • ワードパッドでも可能。ただし、必ずテキスト形式で保存すること
  2. 先頭行を自分のサーバに合わせる
  3. #!/usr/bin/env python → #!/usr/local/bin/python
    • 上記は 『さくらインターネット』 の場合
    • 他社のサーバの場合、こればっかりは自分で調べるしかない
    • python を使いたい場合はどうすれば良いのか泣きながら調べる
  4. 以上で sitemap_gen.py の変更は終わり

example_config.xml の変更example_config.xml の変更

  1. example_config.xml を config.xml という名前に変更する
    • アイコンを選択して F2 キーを押下すると名前を変えられる
  2. config.xml をテキストエディタで開く
    • 上述したsitemap_gen.py の変更と同様に Notepad(メモ帳)で開くのが吉
      • ワードパッドでも可能。ただし、必ずテキスト形式で保存すること
    • ダブルクリックで他のアプリケーションが起動してしまう場合は
      1. アイコンの上でマウスの右ボタンをクリック
      2. 表示されるメニューの 『アプリケーションから開く(H)』 を選択
      3. 表示されるサブメニューの 『プログラムの選択...』 を選択
      4. 上述した 『sitemap_gen.py の変更』 の時と同様の手順で Notepad(メモ帳)を選択
  3. ちょっと方針決め
    • Google Sitemap Generator では様々な方法でサイトマップを作成できるが、自分で URL リストを作成しなければならなかったり、面倒な手続きが必要なものはパス
    • 設定さえしておけば自動的にサイト内のファイル情報を収集してくれる "directory" を採用する
    • 従って、それ以外の設定は完全に無視
  4. とりあえず 2行目 〜 33行目までをバッサリと削除
    • 2行目 (以下の記述)から
    • <!--
        sitemap_gen.py example configuration script
           :
           :
          file paths. (Example: "UTF-8")
      -->
    • 33行目 (上の記述)まで
    • 必要ないし、あると説明が面倒なので思いっきり削除
  5. 削除すると 1行目〜 6行目までは、以下のようになるはず
  6. <?xml version="1.0" encoding="UTF-8"?>
    <site
     base_url="http://www.example.com/"
     store_into="/var/www/docroot/sitemap.xml.gz"
     verbose="1"
     >
  7. 上記 5. の 3〜4行を変更
    • 以下の記述を自分のサイトに合わせる
    •  base_url="http://www.example.com/"
       store_into="/var/www/docroot/sitemap.xml.gz"
    • 当サイト(さくらインターネット)の場合は以下のようになる
    •  base_url="http://senrioka-info.net/"
       store_into="/home/*****/www/sitemap.xml.gz"
    • base_url はブラウザでホームページにアクセスする URL
    • store_into は FTP でサーバにアクセスするホストのフォルダ
    • ***** はサーバ管理会社から割り当てられたディレクトリ
    • sitemap.xml.gz は出力されるサイトマップのファイル
    • つまり、サイトのルートディレクトリ。 すなわち、トップページのファイルがあるのと同じ場所にサイトマップを出力するということ
  8. 8 〜 60 行目をバッサリと削除
    • 8行目 (以下の記述)から
    • <!-- ********************************************************
          INPUTS
           :
           :
        default_file - name of the index or default file for directory URLs
      -->
    • 60行目 (上の記述)まで
    • 必要ないし、あると正常動作しないので思いっきり削除
    • 削除すると 1行目〜 13行目までは、以下のようになるはず
    • <?xml version="1.0" encoding="UTF-8"?>
      <site
       base_url="http://www.example.com/"
       store_into="/var/www/docroot/sitemap.xml.gz"
       verbose="1"
      >

       <directory path="/var/www/icons" url="http://www.example.com/images/" />
       <directory
         path="/var/www/docroot"
         url="http://www.example.com/"
         default_file="index.html"
       />
  9. 上 (削除後) の後の 8 〜 12行目を変更
    • 以下の記述を自分のサイトに合わせる
    • <directory path="/var/www/icons" url="http://www.example.com/images/" />

      <directory
       path="/var/www/docroot"
       url="http://www.example.com/"
       default_file="index.html"
      />
    • 当サイト(さくらインターネット)の場合は以下のようになる
    • <directory path="/home/*****/www/" url="http://senrioka-info.net/" />

      <directory
       path="/home/*****/www/"
       url="http://senrioka-info.net/"
       default_file="index.htm"
      />
    • 細かな部分は上記 4. と同じ
    • 本来は最初の 1行だけあれば良い
      • default_file の index.htm はサイトのトップページのファイル名
      • toppage.htm や welcome.htm など、index と異なるファイル名を使用してる場合は下段の 5行が必要
  10. 15 〜 73 行目をバッサリと削除
    • 15行目 (以下の記述)から
    • <!-- ** MODIFY or DELETE **
       "accesslog" nodes tell the script to scan webserver log files to
           :
           :
      <!-- Exclude URLs that end with a '~' (IE: emacs backup files) -->
    • 73行目 (上の記述)まで
    • 必要ないし、あると正常動作しないので思いっきり削除
  11. ついでに以下の 2行も削除
    • 上記 9. の削除をした後の 17 〜 18行目
    •  <!-- Exclude URLs within UNIX-style hidden files or directories -->
       <filter action="drop" type="regexp" pattern="/\.[^/]*" />
    • 削除すると 1行目〜 17行目までは、以下のようになるはず
    • <?xml version="1.0" encoding="UTF-8"?>
      <site
       base_url="http://www.example.com/"
       store_into="/var/www/docroot/sitemap.xml.gz"
       verbose="1"
       >

       <directory path="/var/www/icons" url="http://www.example.com/images/" />
       <directory
         path="/var/www/docroot"
         url="http://www.example.com/"
         default_file="index.html"
       />

       <filter action="drop" type="wildcard" pattern="*~"     />

      </site>
  12. 上記 10. の削除を実行後の 15行目からを変更
    • ここからが少し面倒。 要はサイトマップに登録してほしくないファイルをフィルターしてあげる
    • ただし、ちょっとコツがいる
    • <filter action="drop" type="wildcard" pattern="*~"     />
    • 上記 action= の drop は 「登録しないで」 ということ。
    • *~ の 「~」(チルダ)と余計なスペースを削除
    • <filter action="drop" type="wildcard" pattern="*"/>
    • type="wildcard" とある通り、ワイルドカードを使うので上記の変更では全てのファイルをブロックしたことになる。
    • それではサイトマップにならないので以下の赤い行を追加する
    • <filter action="pass" type="wildcard" pattern="*.htm" />
      <filter action="pass" type="wildcard" pattern="*.php" />
      <filter action="drop" type="wildcard" pattern="*"/>
    • action="pass"は 「登録してね」 ということ
    • つまり、URL の最後が .htm や .php で終わる URL はサイトマップに登録するという意味
    • そして最後に (緑の行) 「それ以外は登録しないでね」 としてやる
    • これで .gif や .jpg などの画像が登録されることがなくなる
    • 注意が必要なのは、必ず緑の行 (登録しないで) を最後にすること。 最初にあると、すべてブロックされてしまうようだ
    • 当然、作成したページが .html という拡張子だったり、.cgi も登録してほしければ
    • <filter action="pass" type="wildcard" pattern="*.html" />
      <filter action="pass" type="wildcard" pattern="*.cgi" />
      <filter action="pass" type="wildcard" pattern="*.htm" />
      <filter action="pass" type="wildcard" pattern="*.php" />
      <filter action="drop" type="wildcard" pattern="*"/>

      と、行を増やしてやれば良い (必要なだけ)
    • 人に見せたくないディレクトリがある場合は以下(赤い行)のように記述
    • <filter action="drop" type="wildcard" pattern="*/aaaaa/*" />
      <filter action="pass" type="wildcard" pattern="*.htm" />
      <filter action="pass" type="wildcard" pattern="*.html" />
      <filter action="pass" type="wildcard" pattern="*.php" />
      <filter action="pass" type="wildcard" pattern="*.cgi" />
      <filter action="drop" type="wildcard" pattern="*"/>

    • 上記は aaaaa という名前のディレクトリを含む URL は 「登録しないで」 ということ
    • action=drop にすることを忘れずに、これも必要な分だけ追加
    • <filter action="drop" type="wildcard" pattern="*/ccccc/*" />
      <filter action="drop" type="wildcard" pattern="*/bbbbb/*" />
      <filter action="drop" type="wildcard" pattern="*/aaaaa/*" />
      <filter action="pass" type="wildcard" pattern="*.htm" />
      <filter action="pass" type="wildcard" pattern="*.html" />
      <filter action="pass" type="wildcard" pattern="*.php" />
      <filter action="pass" type="wildcard" pattern="*.cgi" />
      <filter action="drop" type="wildcard" pattern="*"/>
    • aaaaa というフォルダはブロックしたいけど、そのフォルダにあるファイルは登録してほしいというワガママな設定は以下の通り
    • <filter action="pass" type="wildcard" pattern="*/aaaaa/hogehoge.htm*" />
      <filter action="drop" type="wildcard" pattern="*/ccccc/*" />
      <filter action="drop" type="wildcard" pattern="*/bbbbb/*" />
      <filter action="drop" type="wildcard" pattern="*/aaaaa/*" />
      <filter action="pass" type="wildcard" pattern="*.htm" />
      <filter action="pass" type="wildcard" pattern="*.html" />
      <filter action="pass" type="wildcard" pattern="*.php" />
      <filter action="pass" type="wildcard" pattern="*.cgi" />
      <filter action="drop" type="wildcard" pattern="*"/>
    • 上記は aaaaa というフォルダにある hogehoge.htm は 「登録してね」 ということ
    • 4行目があることで、aaaaa フォルダにあるそれ以外のファイルは 「登録しないで」 ということになる
    • 必ず 4行目 (登録しないで) より前に記述すること。 そうしなければ登録してくれない
    • action=pass にすることを忘れずに、これも必要な分だけ追加
    • <filter action="pass" type="wildcard" pattern="*/ccccc/hogehoge.cgi*" />
      <filter action="pass" type="wildcard" pattern="*/bbbbb/hogehoge.php*" />
      <filter action="pass" type="wildcard" pattern="*/aaaaa/hogehoge.htm*" />
      <filter action="drop" type="wildcard" pattern="*/ccccc/*" />
      <filter action="drop" type="wildcard" pattern="*/bbbbb/*" />
      <filter action="drop" type="wildcard" pattern="*/aaaaa/*" />
      <filter action="pass" type="wildcard" pattern="*.htm" />
      <filter action="pass" type="wildcard" pattern="*.html" />
      <filter action="pass" type="wildcard" pattern="*.php" />
      <filter action="pass" type="wildcard" pattern="*.cgi" />
      <filter action="drop" type="wildcard" pattern="*"/>
    • こんな感じで、登録してほしい/ほしくない URL を記述してやる
  13. 以上で config.xml の変更は終わり

ファイルのアップロードファイルのアップロード

  1. sitemap_gen.py と config.xml を FTP でサーバにアップロードする
    • サイト運営者であれば FTP くらいは使えるはずなので詳細はパス
  2. アップロード先
    • サイトマップを作成してほしいディレクトリにアップロード
    • 当サイトの場合は
    • /home/*****/www/
    • 当然テキストモードでアップするが、FTP が自動判別してくれると思うので気にしない

sitemap_gen.py の実行sitemap_gen.py の実行

  1. いよいよ sitemap_gen.py を動かしてみる
  2. Windows の『スタート』 ボタンから 『ファイル名を指定して実行(R)...』 を選択
  3. 以下のダイアログが表示されるので telnet (テルネット)の後に半角スペースを入れて接続するサーバ名を入力する
    • 当サイトの場合は 『さくらインターネット』 なので上の通り(***** 自分に割り当てられたフォルダ(アカウント)名)
  4. [OK] ボタンをクリックすると telnet.exe が起動し、サーバに接続される
  5. login: では上記 3. と同様に自分に割り当てられたフォルダ (アカウント) 名を入力して Enter
  6. 次にパスワード入力を要求される
    • ここは業者から指定されたか、自分で決めたパスワードを入力するだけ。
  7. パスワードを入力しても画面表示されないけど入力が完了したら Enter
  8. なんか色々と文字が出た後、 % で入力待ち状態になる
  9. cd www と入力して Enter
    • これでフォルダ www に移動したことになる
    • 普通の人はここにサイトのトップページがあり、sitemap_gen.py と config.xml をアップロードしたはず
    • さらに下位のディレクトリにサイトを作成した場合は cd ****(←ディレクトリ名)Enter の繰り返しでトップページのあるディレクトリまで移動
  10. 移動が完了したら以下のコマンドを入力して Enter
  11. python sitemap_gen.py --config=config.xml
    • 上記 『example_config.xml の変更』 の 1. でファイル名を変更しなかった場合は
    • python sitemap_gen.py --config=example_config.xml
  12. ズルズルと文字が表示されて sitemap.xml.gz が吐き出される
    • 最後の 2行が 0 であれば
    • Number of errors: 0
      Number of warnings: 0
      問題なし
    • errors: が 1 以上であれば sitemap_gen.py の 1行目が間違っているか config.xml での記述(フォルダ名、ファイル名など)を間違えているかなので調べるが吉
    • warnings: が 1 以上であっても大丈夫?らしい。(色々と検索して調べた結果)
  13. 以上で sitemap_gen.py の実行は終わりなので exit と入力して Enter して telnet を終了する

sitemap.xml.gz の確認sitemap.xml.gz の確認

  1. 思った通りに sitemap.xml.gz が出力されたか確認してみる
  2. FTP でサーバに接続し、sitemap.xml.gz をダウンロード
  3. このままだと開くことができないので上記 『入手した sitemap_gen-1.4.zip の解凍』 で入手した +Lhaca で解凍
  4. sitemap.xml が解凍されるので内容を確認
  5. 先頭部分を除き、ズラズラと以下のような内容が連続して書き出されているはず
  6. <url>
     <loc>http://senrioka-info.net/index.htm</loc>
     <lastmod>2006-05-24T04:27:51Z</lastmod>
     <priority>0.5000</priority>
    </url>
    • <loc>***</loc> は登録された (される) URL
    • <lastmod>***</lastmod> は、そのファイルが更新された (サーバにアップされた) 年月日と時間
    • <priority>***</priority> は、サイト内における優先順位
  7. ここで余計なファイル (URL) が出力されていないか、必要なファイル (URL) が間違いなく出力されているかを確認



[ Google Sitemap 利用への道 TOP ]