Nucleusでは動的にページを作成しています。そのため、投稿したり変更したりした後に、わざわざ再構築しなくても即時にページに反映されます。しかしながら、このためにURLが "index.php?itemid=1234" のようにパラメータの付いた動的なものとなってしまいまず。
以前と違って、最近ではGoogleでもある程度動的なURLもインデックス化してくれるようで、Googleで検索してもNucleusの動的なURLのままのページがヒットしています。しかしクロール頻度とか完全に静的なURLと同等かと言われれば、そこまでは分かりませんので出来ることなら静的URLにしておくにこしたことはありません。
この動的なURLを静的なURLに変更する方法として、2種類あります。一つはNucleusの機能として用意されている「Fancy URLモード」に変更することと、もう一つはWebサーバ(特にApache)の機能であるmod_rewriteを利用することです。
これは "index.php?itemid=1234" のURLを"itemid/1234" のように変えるものです。具体的な方法はインストールしたマニュアルの「Tips & Suggestions」に載っておりますのでここでは割愛しますが、その通りに実行しているのですが、これがうまくいきません。
作業終了後のページ内のリンク先はFancy URLになっているのですが、そこにアクセスしようとすると404エラーでページが無いと言われます。これは以前試したAAA!CAFEの時も同じでした。Googleで調べてみましても同様のエラーで苦労している人は無さそうで、何か基本的なところを見落としているかと思うのですが、それが分かりません。
Fancy URLモードはあきらめて元に戻し、次にmod_rewriteを試してみました。これはApacheのmod_rewrite機能を利用して静的なURLで受け付けたリクエストを動的なURLのリクエストに変換するものです。すなわち、Nucleus内部では動的なURLのままなので、静的なURL・動的なURLのどちらでもアクセス可能となります。そのため、Webの運用後しばらくたってからこの機能を使って静的なURLへ見せかけるように変更しても、変更前の動的なURLへのリンクはそのままアクセスできます。
この設定方法もマニュアルの「Tips & Suggestions」に記述されていますが、一応、こちらにも記入しておきます。
まずリクエストの変換のためのルールを.htaccessファイルに以下のように記入します。
1つ目を例に簡単に説明しますと、"archive-1-2004-08.html"というリクエストは"index.php?archive=2004-08&blogid=1"に変換されてNucleusにアクセスされます。逆に言いますと、"index.php?archive=2004-08&blogid=1"というNucleusの動的なURLは、"archive-1-2004-08.html"という静的なURLでもアクセス可能になるという事です。
このルールは正規表現で記入されておりますので、この詳しい内容は知りたいときや、別のルールに変更したいときは正規表現について調べて下さい。
この.htaccessファイルをnucleusのルートディレクトリにftpでアップロードします。ブラウザに直接"archive-1-2004-08.html"と入力して表示されれば成功です。後はNucleusでのページのリンクの指定を、静的なURLに変更するだけです。
自分の使用しているテンプレートを見て、"<%archivelink%>"となっている部分を"archive-<%blogid%>-<%year%>-<%month%>.html"に、"<%itemlink%>"となっている部分を"item-<%itemid%>.html"に変更します。これで月別アーカイブページへのリンクおよび個別アイテムページへのリンクが静的なものに変わります。月別アーカイブ一覧ページへのリンクは、私自身このBlogで使用しておりませんので、省略します。
これで、ページ内のリンクが静的なものになり、検索エンジンに拾われやすくなります。
ただし、プラグインで使用しているカテゴリーおよび最新投稿のリンク、さらにトラックバック時のURLは以前の動的なURLのままです。次の課題は、これらも静的なものに変えることですね。
以前と違って、最近ではGoogleでもある程度動的なURLもインデックス化してくれるようで、Googleで検索してもNucleusの動的なURLのままのページがヒットしています。しかしクロール頻度とか完全に静的なURLと同等かと言われれば、そこまでは分かりませんので出来ることなら静的URLにしておくにこしたことはありません。
この動的なURLを静的なURLに変更する方法として、2種類あります。一つはNucleusの機能として用意されている「Fancy URLモード」に変更することと、もう一つはWebサーバ(特にApache)の機能であるmod_rewriteを利用することです。
Fancy URLモード
これは "index.php?itemid=1234" のURLを"itemid/1234" のように変えるものです。具体的な方法はインストールしたマニュアルの「Tips & Suggestions」に載っておりますのでここでは割愛しますが、その通りに実行しているのですが、これがうまくいきません。
作業終了後のページ内のリンク先はFancy URLになっているのですが、そこにアクセスしようとすると404エラーでページが無いと言われます。これは以前試したAAA!CAFEの時も同じでした。Googleで調べてみましても同様のエラーで苦労している人は無さそうで、何か基本的なところを見落としているかと思うのですが、それが分かりません。
mod_rewrite
Fancy URLモードはあきらめて元に戻し、次にmod_rewriteを試してみました。これはApacheのmod_rewrite機能を利用して静的なURLで受け付けたリクエストを動的なURLのリクエストに変換するものです。すなわち、Nucleus内部では動的なURLのままなので、静的なURL・動的なURLのどちらでもアクセス可能となります。そのため、Webの運用後しばらくたってからこの機能を使って静的なURLへ見せかけるように変更しても、変更前の動的なURLへのリンクはそのままアクセスできます。
この設定方法もマニュアルの「Tips & Suggestions」に記述されていますが、一応、こちらにも記入しておきます。
まずリクエストの変換のためのルールを.htaccessファイルに以下のように記入します。
RewriteEngine On
RewriteRule ^archive-([0-9]+)-([0-9]+)-([0-9]+).html+ index.php?archive=$2-$3&blogid=$1
RewriteRule ^item-([0-9]+).html+ index.php?itemid=$1
RewriteRule ^archivelist-([a-z]+).html+ index.php?archivelist=$1
RewriteRule ^archive-([0-9]+)-([0-9]+)-([0-9]+).html+ index.php?archive=$2-$3&blogid=$1
RewriteRule ^item-([0-9]+).html+ index.php?itemid=$1
RewriteRule ^archivelist-([a-z]+).html+ index.php?archivelist=$1
1つ目を例に簡単に説明しますと、"archive-1-2004-08.html"というリクエストは"index.php?archive=2004-08&blogid=1"に変換されてNucleusにアクセスされます。逆に言いますと、"index.php?archive=2004-08&blogid=1"というNucleusの動的なURLは、"archive-1-2004-08.html"という静的なURLでもアクセス可能になるという事です。
このルールは正規表現で記入されておりますので、この詳しい内容は知りたいときや、別のルールに変更したいときは正規表現について調べて下さい。
この.htaccessファイルをnucleusのルートディレクトリにftpでアップロードします。ブラウザに直接"archive-1-2004-08.html"と入力して表示されれば成功です。後はNucleusでのページのリンクの指定を、静的なURLに変更するだけです。
自分の使用しているテンプレートを見て、"<%archivelink%>"となっている部分を"archive-<%blogid%>-<%year%>-<%month%>.html"に、"<%itemlink%>"となっている部分を"item-<%itemid%>.html"に変更します。これで月別アーカイブページへのリンクおよび個別アイテムページへのリンクが静的なものに変わります。月別アーカイブ一覧ページへのリンクは、私自身このBlogで使用しておりませんので、省略します。
これで、ページ内のリンクが静的なものになり、検索エンジンに拾われやすくなります。
ただし、プラグインで使用しているカテゴリーおよび最新投稿のリンク、さらにトラックバック時のURLは以前の動的なURLのままです。次の課題は、これらも静的なものに変えることですね。
No comments yet
Add Comments
Trackbacks
Trackback URL
texas hold em poker texas hold em poker pinged on 2005-04-07
clay poker chips - http://clay-poker-chips.esportswave.com | free strip poker - http://free-strip-poker.esportswave.com | play poker - http://play-poker.esportswave.com | free video poker - http://fre
free backgammon software free backgammon software pinged on 2005-04-06
Everything must justify its existence before the judgement seat of Reason, or give up existence. http://w528.com
free backgammon game free backgammon game pinged on 2005-04-06
http://artofbackgammon.com - backgammon set up, backgammon freeware | http://backgammon-secrets.com - backgammon instructions, free backgammon play online | http://abackgammon.com - electronic backgam
buy viagra online buy viagra online pinged on 2005-03-29
He that hath wife and children hath given hostages to fortune; for they are impediments to great enterprises, either of virtue or mischief. Certainly the best works, and of greatest merit for the publ
poker poker pinged on 2005-03-19
Bow your heads to your husbands - and that will be ornament enough for you. Keep your hands busy with spinning and stay at home - and you will be more pleasing than if you were adorned in gold. Dress
online poker online poker pinged on 2005-02-21
I wish, my dear Kepler, that we could have a good laugh together at the extraordinary stupidity of the mob. What do you think of the foremost philosophers of this University? In spite of my oft-repeat
静的URLに変えてみる きままなBLOG pinged on 2004-11-27
Nucleusを使用しているBLOGサイトを見ていると、色んな記事に出会います。
どうやらNucleusは動的にページ生成し、URLが記事番号をパラメタとした、動的なアドレスになっているので、
Googleなどの検索ロボットでは...