<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>A Magic Web</title>
	<atom:link href="http://www.a-magic-web.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.a-magic-web.com</link>
	<description></description>
	<lastBuildDate>Sun, 22 Jan 2012 05:47:37 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>CentOS に Vim7.3 をインストールして直接 HTML コーディング</title>
		<link>http://www.a-magic-web.com/2010/09/vim_install/</link>
		<comments>http://www.a-magic-web.com/2010/09/vim_install/#comments</comments>
		<pubDate>Sat, 18 Sep 2010 16:06:21 +0000</pubDate>
		<dc:creator>vohedge</dc:creator>
				<category><![CDATA[note]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://www.a-magic-web.com/?p=893</guid>
		<description><![CDATA[直接と言っても開発用の仮想サーバーでの話です。アップロードの手間がなくなるのは楽ですね。気になったのは改行コード。Windows は標準で CR+LF。Unix 系 OS は LF。Windows 環境の人が同じファイルを編集する可能性も考えて CR+LF で保存できることが理想でしたが、それも問題ありませんでした。 Vim 7.3 のインストール CentOS 標準のリポジトリには最新の vim [...]]]></description>
			<content:encoded><![CDATA[<p>直接と言っても開発用の仮想サーバーでの話です。アップロードの手間がなくなるのは楽ですね。気になったのは改行コード。Windows は標準で CR+LF。Unix 系 OS は LF。Windows 環境の人が同じファイルを編集する可能性も考えて CR+LF で保存できることが理想でしたが、それも問題ありませんでした。</p>
<p><span id="more-893"></span></p>
<h2>Vim 7.3 のインストール</h2>
<p>CentOS 標準のリポジトリには最新の vim のパッケージがありません。こちらで紹介されている方法そのままでインストールすることができました。<br />
<a href="http://d.hatena.ne.jp/hosikiti/">CentOS 5.5 にVim7.3をソースからインストール &#8211; ITコンサルタント成長録</a></p>
<blockquote><p>yum install ncurses-devel -y<br />
wget http://ftp.vim.org/pub/vim/unix/vim-7.3.tar.bz2<br />
tar jxfv vim-7.3.tar.bz2<br />
mkdir vim73/patches<br />
cd vim73/patches<br />
seq -f http://ftp.vim.org/pub/vim/patches/7.3/7.3.%03g 3 | xargs wget<br />
cd ..<br />
cat patches/7.3.* | patch -p0<br />
./configure &#8211;prefix=/usr &#8211;enable-multibyte &#8211;with-features=huge &#8211;disable-selinux<br />
make<br />
make install<br />
<a href="http://d.hatena.ne.jp/hosikiti/20100910/1284079341">CentOS 5.5 にVim7.3をソースからインストール &#8211; ITコンサルタント成長録</a></p></blockquote>
<p>上記の設定で、以下のディレクトリにインストールされます。</p>
<div class="command">
<pre>[root@nekoneko vim73]# pwd
/usr/share/vim/vim73
[root@nekoneko vim73]# ls -l
合計 344
drwxrwxrwx  3 root root  4096  9月  8 05:51 autoload
-rw-r--r--  1 root root  1955  9月  8 01:48 bugreport.vim
drwxr-xr-x  2 root root  4096  9月  8 01:48 colors
drwxr-xr-x  2 root root  4096  9月  8 01:48 compiler
-rw-r--r--  1 root root   645  9月  8 01:48 delmenu.vim
drwxrwxrwx  2 root root  4096  9月  8 05:48 doc
-rw-r--r--  1 root root  1965  9月  8 01:48 evim.vim
-rw-r--r--  1 root root 62667  9月  8 01:48 filetype.vim
-rw-r--r--  1 root root   280  9月  8 01:48 ftoff.vim
drwxrwxrwx  3 root root  4096  9月  8 05:31 ftplugin
-rw-r--r--  1 root root   971  9月  8 01:48 ftplugin.vim
-rw-r--r--  1 root root   285  9月  8 01:48 ftplugof.vim
-rw-r--r--  1 root root  1698  9月  8 01:48 gvimrc_example.vim
drwxr-xr-x  2 root root  4096  9月  8 01:48 indent
-rw-r--r--  1 root root   767  9月  8 01:48 indent.vim
-rw-r--r--  1 root root   282  9月  8 01:48 indoff.vim
drwxr-xr-x  2 root root  4096  9月  8 01:48 keymap
drwxr-xr-x 29 root root 12288  9月  8 01:48 lang
drwxr-xr-x  6 root root  4096  9月  8 01:48 macros
-rw-r--r--  1 root root 38239  9月  8 01:48 menu.vim
-rw-r--r--  1 root root  2587  9月  8 01:48 mswin.vim
-rw-r--r--  1 root root 54908  9月  8 01:48 optwin.vim
drwxrwxrwx  2 root root  4096  9月  8 05:48 plugin
drwxr-xr-x  2 root root  4096  9月  8 01:48 print
-rw-r--r--  1 root root  9753  9月  8 01:48 scripts.vim
drwxr-xr-x  2 root root  4096  9月  8 01:48 spell
-rw-r--r--  1 root root 34595  9月  8 01:48 synmenu.vim
drwxr-xr-x  2 root root 20480  9月  8 01:48 syntax
drwxr-xr-x  2 root root  4096  9月  8 01:48 tools
drwxr-xr-x  2 root root  4096  9月  8 01:48 tutor
-rw-r--r--  1 root root  2938  9月  8 01:48 vimrc_example.vim</pre>
</div>
<h2>.vimrc の設定</h2>
<p>文字コードは指定しておかないと、日本語が含まれるファイルの保存ができなくなってしまいます。.vimrc ファイルは、vimをインストールしたディレクトリにサンプルファイル（vimrc_example.vim）があるので、これを ~ ディレクトリにコピーして作成。以下を追加します。個人的に Perl はほとんど書かないので以下の設定で。タブの設定も自分仕様。</p>
<div class="command">
<pre>set encoding=utf-8
set fileencodings=sjis,iso-2022-jp,euc-jp
set fileformats=dos,unix
set tabstop=4
set noexpandtab
set shiftwidth=4
set softtabstop=4</pre>
</div>
<h2>Vim の文字コードについて</h2>
<p>最初、文字コードの指定方法が複数あって混乱していたのですが、こちらのエントリに救われました。</p>
<p><a href="http://peace-pipe.blogspot.com/2006/04/mac-6-vim-mac.html">Peace Pipe: Mac 環境構築 その6 &#8211; vim の文字コード設定 [mac]</a></p>
<p>同じく改行コードの説明はこちらが分かりやすかったです。</p>
<p><a href="view-source:http://d.hatena.ne.jp/janus_wel/20100731/1280574243">改行文字 &#8211; KBDAHOLIC &#8211; やぬすさんとこ</a></p>
<h2>プラグイン</h2>
<h3>zencoding</h3>
<p>書いてある通りにインストールすれば OK。</p>
<p><a href="http://www.vim.org/scripts/script.php?script_id=2981">ZenCoding.vim &#8211; vim plugins for HTML and CSS hi-speed coding. : vim online</a></p>
<h3>AutoComplPop</h3>
<p>こちらもコーディングの時に手放せないもの。こちらも書いてある通りにファイルを配置すれば OK。&#8221;rutime directory&#8221; というのは、vim がインストールされているディレクトリですね。</p>
<p><a href="http://www.vim.org/scripts/script.php?script_id=1879">AutoComplPop &#8211; Automatically opens popup menu for completions : vim online</a></p>
<p>これだけでもかなり幸せになれました。</p>
<p><a href="http://www.a-magic-web.com/2010/08/ga_navsammery_entrancepath/">http://www.a-magic-web.com/2010/08/ga_navsammery_entrancepath/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.a-magic-web.com/2010/09/vim_install/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Analytics ナビゲーションサマリーと閲覧開始後の遷移の違い</title>
		<link>http://www.a-magic-web.com/2010/08/ga_navsammery_entrancepath/</link>
		<comments>http://www.a-magic-web.com/2010/08/ga_navsammery_entrancepath/#comments</comments>
		<pubDate>Sat, 07 Aug 2010 05:49:41 +0000</pubDate>
		<dc:creator>vohedge</dc:creator>
				<category><![CDATA[note]]></category>
		<category><![CDATA[google analytics]]></category>

		<guid isPermaLink="false">http://www.a-magic-web.com/?p=889</guid>
		<description><![CDATA[「ナビゲーションサマリー」と「閲覧開始後の遷移」の機能の違いが分からなかったので調べてみました。 ナビゲーションサマリー Google Analytics の公式ブログによると、以下のような機能とのことです。 ＊ナビゲーションサマリー [ナビゲーションサマリー] は、レポートの対象ページを中心に直前に閲覧していたページの URL と、次に閲覧したページの URL を上位 10件 まで確認できます。 [...]]]></description>
			<content:encoded><![CDATA[<p>「ナビゲーションサマリー」と「閲覧開始後の遷移」の機能の違いが分からなかったので調べてみました。</p>
<p><span id="more-889"></span></p>
<h2>ナビゲーションサマリー</h2>
<p>Google Analytics の公式ブログによると、以下のような機能とのことです。</p>
<blockquote><p>＊ナビゲーションサマリー<br />
[ナビゲーションサマリー] は、レポートの対象ページを中心に直前に閲覧していたページの URL と、次に閲覧したページの URL を上位 10件 まで確認できます。また直前に閲覧したページ、次に閲覧したページがサイト内のページでない場合は、それぞれが閲覧開始数、離脱数として集計されているので、参照元、移動先からページのナビゲーションを分析するのに適したレポートです。</p></blockquote>
<p><img style="display: inline; border-width: 0px;" title="image" src="http://www.a-magic-web.com/wp-content/uploads/2010/08/image.png" alt="image" width="630" height="339" border="0" /></p>
<p>最もアクセス状況のよいページから、ユーザーが次にどこのページに行ったか、などを確認しています。意外なニーズが見つかることもあるかもしれません。</p>
<p>「上位10位」とありますが、私の見間違いでなければ遷移先は11位まで表示されていますね。。引用している記事は2008年のものなので仕様変更があったのでしょうか。</p>
<h2>閲覧開始後の遷移</h2>
<p>同じく Google Analytics の公式ブログから引用します。ページ遷移という名前で紹介されています。名前の変更があったみたいですね。</p>
<blockquote><p>＊ページ遷移<br />
当該ページから閲覧を開始したセッションのみを対象にして、対象ページを起点に次に閲覧した1ページと、そのセッションの離脱ページ (閲覧終了ページ) を URL で確認できます。対象は上記の2 URL ですが全ての移動先ページ、離脱ページを網羅しているので、広告などのリンク先ページの評価に適しています。</p></blockquote>
<p><img style="display: inline; border-width: 0px;" title="image" src="http://www.a-magic-web.com/wp-content/uploads/2010/08/image1.png" alt="image" width="630" height="338" border="0" /></p>
<p>「ここで終了」という意味がやっとわかりました。解析しているページの次のページと、そのセッションの最後のページがリストになって表示されているということですね。</p>
<h2>「ナビゲーションサマリー」と「閲覧開始後の遷移」の数値の違い</h2>
<p>解析をしていると、ナビゲーションサマリーと閲覧開始後の遷移の画面で表示されているページのリストや数値に矛盾があるなあ、と思っていたのですが、肝心なことを見ていませんでした。</p>
<ul>
<li>ナビゲーションサマリーはページビューを元にしたクリック率を表示</li>
<li>閲覧開始後の遷移は、セッション数の割合を表示</li>
</ul>
<h2>ナビゲーションサマリーで遷移元、遷移先、分析しているページが同じページ？</h2>
<p>こちらは Google Conversion University で見つけた内容です。ナビゲーションサマリーの画面の中で、分析しているページ、遷移元、遷移先が同じページである場合があります。ぱっと思いつくのが、ユーザーがリロードしているのでは、というものですが、それだけではなかったのでメモしておきます。</p>
<p>例えば、ページ内の画像のサムネイルにリンクを張り、クリックすることで大きな画像を見せる場合。Lightbox的な Ajax を利用したものではなく、単に画像ファイルへのリンクを張っている場合です。</p>
<p>ユーザーが画像をクリックすると、画像ファイルが表示されます。画像ファイル自体にGoogle Analytics のコードを張ることはできないので、画像が表示されてもアクセスとしてカウントされません。</p>
<p>たいていの場合ユーザーは戻るボタンで戻ります。このとき、元のページで再度 Google Analytics の Javascript が実行され、アクセスとしてカウントされます。つまり、同じページが2回カウントされるという現象が起きます。</p>
<p>Google Analytics は、キャッシュされているページを表示した場合でも Javascript によって PV をカウントするためこのような現象が起こります。</p>
<p>参考にしたサイト</p>
<p><a href="http://analytics-ja.blogspot.com/2008/08/definition-of-navigation-summary-and.html">ページ遷移とナビゲーションサマリーレポートの違い</p>
<p>http://analytics-ja.blogspot.com/2008/08/definition-of-navigation-summary-and.html</a></p>
<p><a href="http://www.google.com/support/conversionuniversity/bin/static.py?hl=en&amp;page=iq_learning_center.cs&amp;rd=1">Conversion University</p>
<p>http://www.google.com/support/conversionuniversity/bin/static.py?hl=en&#038;page=iq_learning_center.cs&#038;rd=1</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.a-magic-web.com/2010/08/ga_navsammery_entrancepath/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Analytics のデータ共有とアカウント</title>
		<link>http://www.a-magic-web.com/2010/03/ga_dateshare/</link>
		<comments>http://www.a-magic-web.com/2010/03/ga_dateshare/#comments</comments>
		<pubDate>Mon, 15 Mar 2010 00:54:02 +0000</pubDate>
		<dc:creator>vohedge</dc:creator>
				<category><![CDATA[note]]></category>
		<category><![CDATA[google analytics]]></category>

		<guid isPermaLink="false">http://www.a-magic-web.com/?p=881</guid>
		<description><![CDATA[Google Analyticsのアカウントと権限についてまとめてみました。 アカウントの種類と権限 Google Analytics には 2つのタイプのアカウントがあります。&#8221;user&#8221; と &#8220;Administrator&#8221;。 - User (View reports only) レポートの閲覧ができるかどうか、プロファイルごとに設定することができ [...]]]></description>
			<content:encoded><![CDATA[<p>Google Analyticsのアカウントと権限についてまとめてみました。</p>
<p><span id="more-881"></span></p>
<h2>アカウントの種類と権限</h2>
<p>Google Analytics には 2つのタイプのアカウントがあります。&#8221;user&#8221; と &#8220;Administrator&#8221;。</p>
<h4>- User (View reports only)</h4>
<p>レポートの閲覧ができるかどうか、プロファイルごとに設定することができます。このプロファイルを見せて、このプロファイルは見せないという設定が可能です。</p>
<p>User のアカウントでは、閲覧を許可されたプロファイルの設定変更や、そのプロファイルに紐付く新しいプロファイルを作成することはできません。アノテーションの書き込みはできるようです。</p>
<h4>- Administrator (Account Administrator)</h4>
<p>Administrator が追加されると、その Analytics アカウントの管理者となります。プロファイルではなく Analytics アカウントの管理者となるため、その Analytics アカウントに属するすべてのプロファイルを、閲覧、設定変更が可能となります。</p>
<p>新しい Administrator 追加後に、もとの Administrator を削除することもできるため、管理している Analytics アカウントを他の Google アカウントへ譲渡することもできます。</p>
<h2>共有するユーザーの追加</h2>
<p>ログインしてすぐのプルファイルの一覧画面の「ユーザーマネージャ」をクリックします。</p>
<p><img style="display: inline; border-width: 0px;" title="image" src="http://www.a-magic-web.com/wp-content/uploads/2010/03/image192.png" alt="image" width="630" height="333" border="0" /></p>
<p>「Add User」をクリック</p>
<p><img style="display: inline; border-width: 0px;" title="image" src="http://www.a-magic-web.com/wp-content/uploads/2010/03/image193.png" alt="image" width="630" height="134" border="0" /></p>
<p>追加するアカウント (XXX@gmail.com) を入力して、アクセスタイプ (権限)、User タイプの場合は閲覧を許可するプロファイルを選択。「Save Changes」をクリックして完了。簡単です。</p>
<p><img style="display: inline; border: 0px;" title="image" src="http://www.a-magic-web.com/wp-content/uploads/2010/03/image194.png" alt="image" width="630" height="399" border="0" /></p>
<p><a href="http://www.google.com/support/conversionuniversity/" target="_blank">Google?Conversion University</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.a-magic-web.com/2010/03/ga_dateshare/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Analytics のアカウントとプロファイルの関係</title>
		<link>http://www.a-magic-web.com/2010/03/ga_account_and_profile/</link>
		<comments>http://www.a-magic-web.com/2010/03/ga_account_and_profile/#comments</comments>
		<pubDate>Sun, 14 Mar 2010 13:44:45 +0000</pubDate>
		<dc:creator>vohedge</dc:creator>
				<category><![CDATA[note]]></category>
		<category><![CDATA[google analytics]]></category>

		<guid isPermaLink="false">http://www.a-magic-web.com/?p=871</guid>
		<description><![CDATA[Google Analytics には、前提となる Goolgle アカウントとそれに紐付く Analytics のアカウント、プロファイルがあって、それぞれが何なのか分からないまま使っていたり。また、複数のサイトの管理を行うとき、Analytics のアカウントを増やせばよいのか、Google アカウントを増やせばよいのか、など迷うことも。今回、この辺をまとめてみます。 ほとんどの情報は Con [...]]]></description>
			<content:encoded><![CDATA[<p>Google Analytics には、前提となる Goolgle アカウントとそれに紐付く Analytics のアカウント、プロファイルがあって、それぞれが何なのか分からないまま使っていたり。また、複数のサイトの管理を行うとき、Analytics のアカウントを増やせばよいのか、Google アカウントを増やせばよいのか、など迷うことも。今回、この辺をまとめてみます。</p>
<p><span id="more-871"></span></p>
<p>ほとんどの情報は Conversion University (英語版) から得ています。運用方法などは、初心者のメモとしてお読みください。</p>
<h2>Google アカウントと Analytics アカウントとプロファイルの関係</h2>
<p><img class="alignnone size-full wp-image-874" title="ga20100314_1" src="http://www.a-magic-web.com/wp-content/uploads/2010/03/ga20100314_1.png" alt="" width="630" height="248" /></p>
<p>まずは、それぞれの関係性から。Google アカウントの中に複数の Analytics アカウントが所属できて、 さらに Analytics アカウントの中にいくつかのプロファイルが入っている。</p>
<p>HTML にコードを張り付けた時、UA-XXXXXXXX という番号が入っているけど、この番号と Analytics アカウントが 1対1で対応。プロファイルを作ると UA-XXXXXXXX-1、UA-XXXXXXXX-2 という風にプロファイル番号がくっつく。</p>
<h2>複数のサイトを管理する時 Analytics アカウントを増やす？プロファイルを増やす？</h2>
<p><img class="alignnone size-full wp-image-875" title="ga20100314_2" src="http://www.a-magic-web.com/wp-content/uploads/2010/03/ga20100314_2.png" alt="" width="630" height="187" /></p>
<p>私は、サイトごとに Analytics アカウントを作るのが良いと思います。Google のお勧めも 1つのサイトに 1つの Analytics アカウントのようです。理由として、</p>
<h4>- 管理者のアカウントを追加すると全てのプロファイルの管理者となる</h4>
<p>ユーザー権限のユーザーならプロファイルごとに閲覧できるかどうかを設定できるけど、Administrator 権限のアカウントを追加すると、その Analytics アカウント内の全てのプロファイルの管理者となります。</p>
<p>まったく別の組織のサイトのレポートがひとつの Analytics アカウントの中にプロファイルとして入っていると、管理者権限のアカウントは全部見られることになってしまいます。当然管理者なので、設定の変更もできてしまいます。</p>
<h4>- Adwords のアカウントと Analytics のアカウントは 1対1</h4>
<p>Adwords の解析もしたい場合、複数のサイトを 1つの Analytics アカウントとプロファイルで管理していると、そのうち1つのサイトでしか Adwords を使えないです。</p>
<p>プロファイルごとにサイトを管理している場合、プロファイルごとに別の AdWords のアカウントを設定、ということはできません。</p>
<h4>- サブドメインのサイトは？</h4>
<p>複数のサイトの管理と同じです。そのサブドメインのサイトを他のアカウントで別に管理する可能性があるか、独自の AdWords のアカウントを使用することがあるかで決定します。</p>
<h4>- プロファイルの使い方</h4>
<p>自分のアクセスを除外するフィルタなど、フィルタを作成する場合、必ず加工していないデータのプロファイルを残します。Google Analytics のデータは、すでに取得してあるデータに対してフィルタをかけるのではなく、フィルタがかかった状態でデータを取得するため、後からフィルタを解除しても元のデータを得ることができないためです。</p>
<p>いつどんなデータが必要になるとも限らないのでバックアップとして生データを残します。その上でフィルタをかけたり、サブドメインのサイトを追加したりします。</p>
<h2>アカウント、プロファイルの数の上限</h2>
<h4>- 1つの Google アカウントに 25個のAnalytics アカウントを作成することができる</h4>
<h4>- 1つの Analytics アカウントには 50個のプロファイルを作成することができる</h4>
<p>数が足りなくなっても、別な管理者を加え、元の管理者を外すことで Analytics アカウントを別な Google アカウントに移すこともできるので数で困ることはなさそう。</p>
<p>実際に25個以上作成しようとすると、以下のメッセージが表示されました。</p>
<p><img style="display: inline; border-width: 0px;" title="image" src="http://www.a-magic-web.com/wp-content/uploads/2010/03/image191.png" alt="image" width="630" height="289" border="0" /></p>
<h2>新しい Google アカウントを作る時</h2>
<p>通常、Google アカウントを作る時、メールアドレスを求められます。が、自分のアドレスはあらかた使ってしまっていたりします。そんな時は、Gmail の登録から入ると、メールアドレスなしでも Google アカウントを作成できます。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.a-magic-web.com/2010/03/ga_account_and_profile/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Google Analytics の基本的な仕組みと「こんな時はトラッキングできる？」</title>
		<link>http://www.a-magic-web.com/2010/03/google-analytics-basics/</link>
		<comments>http://www.a-magic-web.com/2010/03/google-analytics-basics/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 12:37:23 +0000</pubDate>
		<dc:creator>vohedge</dc:creator>
				<category><![CDATA[note]]></category>
		<category><![CDATA[google analytics]]></category>

		<guid isPermaLink="false">http://www.a-magic-web.com/?p=867</guid>
		<description><![CDATA[Google Analytics の基本的な仕組みと、ユーザーがCookie をブロックしていたらトラッキングを行うことができるか、など、Google Analytics でトラッキングができない場合などをまとめてみました。 Google Analytics はビーコン型のアクセス解析ツール サーバーログ型 : WEBサーバーのアクセスログを解析 ビーコン型 : ユーザーのブラウザから解析用サーバ [...]]]></description>
			<content:encoded><![CDATA[<p>Google Analytics の基本的な仕組みと、ユーザーがCookie をブロックしていたらトラッキングを行うことができるか、など、Google Analytics でトラッキングができない場合などをまとめてみました。</p>
<p><span id="more-867"></span></p>
<h2>Google Analytics はビーコン型のアクセス解析ツール</h2>
<blockquote><p>サーバーログ型 : WEBサーバーのアクセスログを解析</p>
<p>ビーコン型 : ユーザーのブラウザから解析用サーバーにデータを送信して解析</p></blockquote>
<p>トップページ &#8211; サイト内のあるページ &#8211; トップページ、のように、戻るボタンなどで1回表示したページ戻ってきたとき、ブラウザがデータをキャッシュしているため、通信が発生しない場合があります。サーバーログ型はキャッシュでページが表示された場合、その PV をカウントすることができません。</p>
<p>Google Analytics のようなビーコン型なら、キャッシュで表示されたページでもカウントすることができます。ただし、Javascript が動かない環境や、Javascript が動作する前にユーザーがページを離れてしまうとカウントすることはできません。</p>
<h2>Google Analytics の基本的な仕組み</h2>
<p><img class="alignnone size-full wp-image-399" title="image.png" src="http://www.a-magic-web.com/wp-content/uploads/2010/02/image8.png" alt="" width="630" height="488" /></p>
<blockquote><p>1.ユーザーがWEBサイトにアクセスする</p>
<p>2.ブラウザでGoogle Analytics のJavascriptコードが実行される</p>
<p>3.クッキー読み取り(設置)</p>
<p>4.見えない画像をリクエスト</p>
<p>5.Google Analytics のサーバーでデータが処理される</p>
<p>6.Google Analytics でレポートを表示</p></blockquote>
<p>WEBサイトの表示後、埋め込まれたGoogle Analytics のコードが実行され、データを収集。見えない画像のリクエストのパラメータとして、Google Analytics のサーバーにデータを送ります。</p>
<h2>こんな時はトラッキングできる？</h2>
<h4>- cookie をブロックしているユーザーはトラッキングできるか</h4>
<p>Google Analytics は 1stパーティクッキーを経由して、すべてのデータを送信します。よって、3rd パーティクッキーのみのブロックなら、トラッキング可能。1st パーティクッキーのブロックもされると、トラッキングできなくなる。</p>
<h4>- クッキーを削除されたら</h4>
<p>トラッキングは可能。クッキーに保存されていた前回の訪問日などが取得できなくなるため、新規ユーザーと認識される。</p>
<h4>- ユーザーが Javascript を OFF にしている</h4>
<p>トラッキングできない。同様に、Javascript に対応していない携帯ブラウザなども、通常の方法ではトラッキングできない。</p>
<h4>- ページ内で Javascript のエラーが起きたら</h4>
<p>ページ内で Javascript のエラーが起きると、残りのコードは実行されなくなる。Google Analytics のコードがそのエラーより後であれば、トラッキングできなくなる。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.a-magic-web.com/2010/03/google-analytics-basics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache,PHP,MySQLテストサーバー構築手順(beta)</title>
		<link>http://www.a-magic-web.com/2010/02/apachephpmysql_build_beta/</link>
		<comments>http://www.a-magic-web.com/2010/02/apachephpmysql_build_beta/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 17:18:16 +0000</pubDate>
		<dc:creator>vohedge</dc:creator>
				<category><![CDATA[note]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://www.a-magic-web.com/?p=654</guid>
		<description><![CDATA[テストサーバーを作り直したので、メモを残します。テストサーバーは Vmware Server 上に仮想サーバーとして作成しました。物理環境でも手順は変わらないはず。手早く構築するために手順は最低限にしています。 テスト環境構築フロー - Vmware イメージ作成 - CentOS5.4 インストール - ネットワーク設定 - セキュリティ関係停止 - ユーザー作成 - FTP インストール -  [...]]]></description>
			<content:encoded><![CDATA[<p>テストサーバーを作り直したので、メモを残します。テストサーバーは Vmware Server 上に仮想サーバーとして作成しました。物理環境でも手順は変わらないはず。手早く構築するために手順は最低限にしています。</p>
<p><span id="more-654"></span></p>
<h2>テスト環境構築フロー</h2>
<blockquote><p>- Vmware イメージ作成<br />
- CentOS5.4 インストール<br />
- ネットワーク設定<br />
- セキュリティ関係停止<br />
- ユーザー作成<br />
- FTP インストール<br />
- Apache インストール<br />
- Bind インストール<br />
- PHPインストール<br />
- MySQL インストール<br />
- Virtual ホスト設定<br />
- phpMyadmin インストール</p></blockquote>
<h2>Vmware ゲストOS作成</h2>
<p>使用している Vmware Server は 1.x 系。2.x 系が使いづらかったのと、職場の環境が VMware Workstion とほぼ同じインターフェースなので。普通にゲスト OSを作成。</p>
<blockquote><p>- Guset oprating system : Linux で<br />
- Version : Red Hat Enterprise Linux 4<br />
- ネットワークは bridge でも NAT でも用途に合わせて<br />
- サイズは適当に10から20GB程度</p></blockquote>
<p>スナップショットを利用すると、後から仮想ディスクの容量を増やすことができなくなるため、多めに。</p>
<blockquote><p>- Allocate all disk now :</p></blockquote>
<p>ここにチェックを入れてしまうと、作成に時間がかかるのと、指定したサイズ分物理ディスクを使ってしまう。上で指定した10-20GB使われると困るので、オフにする。</p>
<h2>CentOS インストール</h2>
<p>GUI インストールで全てデフォルト。ネットワークも後で設定するのでそのまま。</p>
<h2>ネットワーク設定</h2>
<p>IP を変えると SSH などの接続も切れてしまうので、VMware のコンソールで直接操作。VMware のネットワーク設定を NAT にしている場合は、[Host] → [Virtual Network Settings] → [NAT] タブから、所属しているネットワーク、ゲートウェイ、サブネットマスクを確認。</p>
<div class="command">
<pre>[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.16.10
NETMASK=255.255.255.0
GATEWAY=192.168.16.2</pre>
</div>
<p>適用させるために、サービス再起動。</p>
<p>[root@localhost ~]# service network restart</p>
<h2>セキュリティ関係停止</h2>
<p>開発の時に邪魔になるセキュリティ関連の機能を停止します。</p>
<h3>iptables の停止</h3>
<div class="command">
<pre>[root@localhost ~]# service iptables status</pre>
</div>
<p>ステータスを確認して、なんかいっぱい出てきたら動いてる。動いてたら停止。</p>
<div class="command">
<pre>[root@localhost ~]# service iptables stop
ファイアウォールルールを適用中:                            [  OK  ]
チェインポリシーを ACCEPT に設定中filter                   [  OK  ]
iptables モジュールを取り外し中
[root@localhost ~]# chkconfig iptables off
[root@localhost ~]# chkconfig --list iptables
iptables        0:off   1:off   2:off   3:off   4:off   5:off   6:off</pre>
</div>
<h3>SElinux の停止</h3>
<p>getenforce が SELinux の状態確認で、Permisive が停止状態。自動起動の停止は sysconfig の selinux を編集する。</p>
<div class="command">
<pre>[root@localhost ~]# getenforce
Enforcing
[root@localhost ~]# setenforce 0
[root@localhost ~]# getenforce
Permissive
[root@localhost ~]# vi /etc/sysconfig/selinux
SELINUX=disabled</pre>
</div>
<h3>yum-updatesd の削除</h3>
<p><a href="http://centossrv.com/centos5-init.shtml">centossrv.com</a> によると、「デフォルトで1時間ごとにアップデートチェックを行うようになっており、手動によるパッケージインストールと競合するとインストールが失敗する」 とのことなので、早々に削除。</p>
<div class="command">
<pre>[root@localhost ~]# /etc/rc.d/init.d/yum-updatesd stop
yum-updates 停止中:                                      [  OK  ]
[root@localhost ~]# yum -y remove yum-updatesd</pre>
</div>
<h2>ユーザー作成</h2>
<p>作業用に root 以外のユーザーを作成。ユーザーの作成には、useradd コマンドを使用。passwd コマンドでパスワードを加えることで初めて使用できるようになる。</p>
<div class="command">
<pre>[root@centos ~]# useradd centos
[root@centos ~]# passwd centosChanging password for user centos.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.</pre>
</div>
<h2>FTP &#8211; vsftpd</h2>
<div class="command">
<pre>[root@centos ~]# yum -y install vsftpd</pre>
</div>
<p>設定は、アスキーモードでの転送と、ディレクトリの削除を可能にするだけ。</p>
<div class="command">
<pre>[root@centos ~]# vi /etc/vsftpd/vsftpd.conf
ascii_upload_enable=YES
ascii_download_enable=YES
ls_recurse_enable=YES</pre>
</div>
<p>起動、自動起動の設定。終わったら、FTPクライアントから接続してみる。</p>
<div class="command">
<pre>[root@centos ~]# /etc/rc.d/init.d/vsftpd start
[root@centos ~]# chkconfig vsftpd on
[root@localhost ~]# chkconfig --list vsftpd
vsftpd          0:off   1:off   2:off   3:off   4:off   5:off   6:off</pre>
</div>
<h2>Apache</h2>
<div class="command">
<pre>[root@centos ~]# yum -y install httpd</pre>
</div>
<p>設定は、CGI、SSI、.htaccess の許可のみ。Virtual host の設定は後から。</p>
<div class="command">
<pre>[root@centos ~]# vi /etc/httpd/conf/httpd.conf
&lt;Directory "/var/www/html"&gt;
Options Includes ExecCGI FollowSymLinks
AllowOverride All</pre>
</div>
<p>テストページの削除。</p>
<div class="command">
<pre>[root@centos ~]# rm -f /etc/httpd/conf.d/welcome.conf
[root@centos ~]# rm -f /var/www/error/noindex.html</pre>
</div>
<p>ドキュメントルートの所有者を作業用ユーザーに変更。</p>
<div class="command">
<pre>[root@localhost ~]# chown centos:centos /var/www/html</pre>
</div>
<p>起動、自動起動の設定。</p>
<div class="command">
<pre>[root@localhost ~]# service httpd start
httpd を起動中:                                            [  OK  ]
[root@centos ~]# chkconfig httpd on
[root@localhost ~]# chkconfig --list httpd
httpd           0:off   1:off   2:on    3:on    4:on    5:on    6:off</pre>
</div>
<p>テストしてみる。以下を実行して、ブラウザからサーバーのIPにアクセス。</p>
<div class="command">
<pre>[root@centos ~]# echo test &gt;&gt; /var/www/html/index.html</pre>
</div>
<h3>BIND</h3>
<p><a href="http://www.a-magic-web.com/server_linux/bind/bind-install.html">BIND インストールと設定</a></p>
<h3>PHPとMySQLとphpMyadminのインストール</h3>
<p><a href="http://www.a-magic-web.com/server_linux/mysql/mysql5-1_php5-3.html">CentOS5.4 に MySQL5.1,PHP5.3とphpMyAdmin</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.a-magic-web.com/2010/02/apachephpmysql_build_beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CentOS5.4 に MySQL5.1,PHP5.3とphpMyAdmin</title>
		<link>http://www.a-magic-web.com/2010/02/mysql5-1_php5-3/</link>
		<comments>http://www.a-magic-web.com/2010/02/mysql5-1_php5-3/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 16:33:54 +0000</pubDate>
		<dc:creator>vohedge</dc:creator>
				<category><![CDATA[note]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[phpmyadmin]]></category>

		<guid isPermaLink="false">http://www.a-magic-web.com/?p=652</guid>
		<description><![CDATA[MySQL、PHP、phpMyAdminのインストールから、Wordpress用のデータベース作成まで。 最新版を入れるため、yumのリポジトリをインストールして変更する。依存関係を解消しながらインストールするより、yum を使った方がずっと楽ですね。 インストール [root@localhost ~]# wget http://download.fedora.redhat.com/pub/epe [...]]]></description>
			<content:encoded><![CDATA[<p>MySQL、PHP、phpMyAdminのインストールから、Wordpress用のデータベース作成まで。</p>
<p>最新版を入れるため、yumのリポジトリをインストールして変更する。依存関係を解消しながらインストールするより、yum を使った方がずっと楽ですね。</p>
<p><span id="more-652"></span></p>
<h2>インストール</h2>
<div class="command">
<pre>[root@localhost ~]# wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm
[root@localhost ~]# wget http://rpms.famillecollet.com/el5.i386/remi-release-5-6.el5.remi.noarch.rpm
[root@localhost ~]# rpm -Uvh epel-release-5* remi-release-5*

[root@localhost ~]# wget http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
[root@localhost ~]# rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm</pre>
</div>
<p>インストールする。</p>
<div class="command">
<pre>[root@localhost ~]# yum --enablerepo=remi,epel,rpmforge update php* mysql*
[root@localhost ~]# yum --enablerepo=remi,epel,rpmforge install php php-gd php-mbstring php-mysql php-odbc php-pdo php-pear mysql-server mysql-bench</pre>
</div>
<p>phpMyadmin のインストール。</p>
<div class="command">
<pre># yum --enablerepo=remi,epel,rpmforge install phpMyAdmin</pre>
</div>
<h2>PHPの動作確認</h2>
<p>apacheの再起動</p>
<div class="command">
<pre>[root@localhost ~]# service httpd restart</pre>
</div>
<p>phpinfo を表示してみる。一緒にインストールしたモジュールの項目が表示されていることを確認。</p>
<div class="command">
<pre>[root@centos ~]# vi /var/www/html/test.php</pre>
</div>
<h2>MySQL 設定</h2>
<p>設定は文字コードのみ。</p>
<div class="command">
<pre>[root@centos ~]# vi /etc/my.cnf
[mysqld]
default-character-set = utf8
[mysql]
default-character-set = utf8</pre>
</div>
<p>起動、自動起動設定</p>
<div class="command">
<pre>[root@centos ~]# service mysqld start
[root@centos ~]# chkconfig mysqld on
[root@localhost ~]# chkconfig --list mysqld
mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off</pre>
</div>
<p>mysql の root にパスワードを設定する。OS自体のユーザーとは別もの。まずは、パスワードを設定するユーザーを確認。</p>
<div class="command">
<pre>[root@centos ~]# mysql -u root
mysql&gt; select user,host,password from mysql.user;
+-------------+-----------------------+-------------------------------------------+
| user        | host                  | password                                  |
+-------------+-----------------------+-------------------------------------------+
| root        | localhost             |                                           |
| root        | localhost.localdomain |                                           |
| root        | 127.0.0.1             |                                           |
|             | localhost             |                                           |
|             | localhost.localdomain |                                           |
+-------------+-----------------------+-------------------------------------------+</pre>
</div>
<p>root にパスワードを設定。</p>
<div class="command">
<pre>mysql&gt; set password for root@localhost=password('パスワード');
mysql&gt; set password for root@localhost.localdomain=password('パスワード');
mysql&gt; set password for root@127.0.0.1=password('パスワード');</pre>
</div>
<p>mysql のrootにパスワードが設定されたことを確認。</p>
<div class="command">
<pre>mysql&gt; select user,host,password from mysql.user;
+-------------+-----------------------+-------------------------------------------+
| user        | host                  | password                                  |
+-------------+-----------------------+-------------------------------------------+
| root        | localhost             | *0B6A2F2B175B57F40643A0377BE9274ACB964C44 |
| root        | localhost.localdomain | *0B6A2F2B175B57F40643A0377BE9274ACB964C44 |
| root        | 127.0.0.1             | *0B6A2F2B175B57F40643A0377BE9274ACB964C44 |
+-------------+-----------------------+-------------------------------------------+</pre>
</div>
<p>サンプルデータベース削除。</p>
<div class="command">
<pre>[root@centos ~]# mysql -u root -p
mysql&gt; show databases;
mysql&gt; drop database test;
mysql&gt; show databases;</pre>
</div>
<h2>wordpress 用のデータベース作成</h2>
<div class="command">
<pre>[root@centos ~]# mysql -u root -p
mysql&gt; create database wordpress;
mysql&gt; grant all privileges on wordpress.* to wordpress@localhost identified by 'パスワード';</pre>
</div>
<h2>phpMyAdmin を使う</h2>
<p>yum でインストールした phpMyadmin は以下にインストールされる。</p>
<blockquote><p>/usr/share/phpMyAdmin</p></blockquote>
<p>設定はデフォルトのままで使用可能。ただし、ドキュメントルート外にインストールされるので、そのままではアクセスできない。http://phpmyadmin.localhost.com/ でアクセスするため、bind のレコード追加と、Virtual hostの設定をしてみた。</p>
<h3>Bind 設定</h3>
<div class="command">
<pre>[root@localhost ~]# cat /var/named/chroot/var/named/localhost.com.db
$TTL    86400
@       IN      SOA     localhost.com.  root.localhost.com.(
                                      2004031901 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
        IN NS    localhost.com.
        IN MX 10 localhost.com.
@       IN A     192.168.0.250
<span style="color: #ff0000;">phpmyadmin IN A 192.168.0.250</span>
*       IN A     192.168.0.250</pre>
</div>
<h3>Virtual host の設定</h3>
<div class="command">
<pre>NameVirtualHost *:80
&lt;VirtualHost *:80&gt;
    ServerAdmin root@localhost.com
    DocumentRoot /usr/share/phpMyAdmin/
    ServerName phpmyadmin.localhost.com
  &lt;Directory "/usr/share/phpMyAdmin"&gt;
    AllowOverride All
    Allow from All
  &lt;/Directory&gt;
&lt;/VirtualHost&gt;</pre>
</div>
<pre>参考記事</pre>
<pre><a href="http://a98.jugem.jp/?eid=371">CentOS 5.3 に php-5.2.9, mysql-5.1.35 をインストール</a></pre>
<pre><a href="http://a98.jugem.jp/?eid=371">データベースサーバー構築(MySQL)</a></pre>
]]></content:encoded>
			<wfw:commentRss>http://www.a-magic-web.com/2010/02/mysql5-1_php5-3/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>BIND インストールと設定</title>
		<link>http://www.a-magic-web.com/2010/02/bind-install/</link>
		<comments>http://www.a-magic-web.com/2010/02/bind-install/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 15:38:37 +0000</pubDate>
		<dc:creator>vohedge</dc:creator>
				<category><![CDATA[note]]></category>
		<category><![CDATA[bind]]></category>

		<guid isPermaLink="false">http://www.a-magic-web.com/server_linux/bind/bind-%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e3%81%a8%e8%a8%ad%e5%ae%9a.html</guid>
		<description><![CDATA[テストサーバーを構築した時のメモ。CentOS5.4 。公開サーバーではないので、外部向けの設定は行っていません。 インストール [root@centos ~]# yum -y install bind bind-chroot caching-nameserver BIND設定ファイル所有グループ変更。 [root@centos ~]# chgrp named /var/named/chroot/ [...]]]></description>
			<content:encoded><![CDATA[<p>テストサーバーを構築した時のメモ。CentOS5.4 。公開サーバーではないので、外部向けの設定は行っていません。</p>
<p><span id="more-650"></span></p>
<p>インストール</p>
<div class="command">
<pre>[root@centos ~]# yum -y install bind bind-chroot caching-nameserver</pre>
</div>
<p>BIND設定ファイル所有グループ変更。</p>
<div class="command">
<pre>[root@centos ~]# chgrp named /var/named/chroot/etc/named.conf</pre>
</div>
<p>色を付けた所を追加。</p>
<div class="command">
<pre>[root@localhost ~]# vi /var/named/chroot/etc/named.conf
//
// named.caching-nameserver.conf
//
// Provided by Red Hat caching-nameserver package to configure the
// ISC BIND named(8) DNS server as a caching only nameserver
// (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
// DO NOT EDIT THIS FILE - use system-config-bind or an editor
// to create named.conf - edits to this file will be lost on
// caching-nameserver package upgrade.
//
options {
        <span style="color: #ff0000;">#</span> listen-on port 53 { 127.0.0.1; };
        <span style="color: #ff0000;">#</span> listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";

        // Those options should be used carefully because they disable port
        // randomization
        // query-source    port 53;
        // query-source-v6 port 53;

        allow-query     { localhost; localnets; };
        allow-query-cache { localhost; localnets; };

        <span style="color: #ff0000;">forwarders{ 192.168.0.1; };</span>
};
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
view localhost_resolver {
        match-clients      { localhost; };
        match-destinations { localhost; };
        recursion yes;
        include "/etc/named.rfc1912.zones";
        <span style="color: #ff0000;">include "/etc/named.localhost.com.zone";</span>
};
<span style="color: #ff0000;">view "internal" { match-clients { localnets; }; match-destinations { localnets; }; recursion yes; include "/etc/named.rfc1912.zones"; include "/etc/named.localhost.com.zone"; };</span></pre>
</div>
<p>ゾーンファイル作成。</p>
<div class="command">
<pre>[root@localhost ~]# vi /var/named/chroot/etc/named.localhost.com.zone
zone "localhost.com" {
        type master;
        file "localhost.com.db";
};
zone "0.168.192.in-addr.arpa" {
        type master;
        file "0.168.192.in-addr.arpa.db";
};</pre>
</div>
<p>内部向け正引き用ファイル作成。</p>
<div class="command">
<pre>[root@localhost ~]# vi /var/named/chroot/var/named/localhost.com.db
$TTL    86400
@       IN      SOA     localhost.com.  root.localhost.com.(
                                      2004031901 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
        IN NS    localhost.com.
        IN MX 10 localhost.com.
@       IN A     192.168.0.250
*       IN A     192.168.0.250</pre>
</div>
<p>内部向け逆引き用ファイル作成</p>
<div class="command">
<pre>[root@localhost ~]# vi /var/named/chroot/var/named/0.168.192.in-addr.arpa.db
$TTL    86400
@       IN      SOA     localhost.com.  root.localhost.com.(
                                      2004031901 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
              IN      NS    localhost.com.
250           IN      PTR   localhost.com.</pre>
</div>
<p>起動、自動起動設定</p>
<div class="command">
<pre>[root@localhost ~]# service named start
named を起動中:                                            [  OK  ]
[root@centos ~]# chkconfig named on
[root@localhost ~]# chkconfig --list named
named           0:off   1:off   2:on    3:on    4:on    5:on    6:off</pre>
</div>
<p>nslookup などで、正引き、逆引きを確認。 複数のレコードを設定するときは、ゾーンファイルに zone{} を追加して、参照先のレコードを書いたファイルを作成。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.a-magic-web.com/2010/02/bind-install/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>会員専用ページに、Apache の Basic 認証を使う</title>
		<link>http://www.a-magic-web.com/2010/01/htaccess_basic_auth/</link>
		<comments>http://www.a-magic-web.com/2010/01/htaccess_basic_auth/#comments</comments>
		<pubDate>Wed, 13 Jan 2010 12:17:59 +0000</pubDate>
		<dc:creator>vohedge</dc:creator>
				<category><![CDATA[note]]></category>
		<category><![CDATA[.htaccess]]></category>

		<guid isPermaLink="false">http://www.a-magic-web.com/server_linux/apatch/htaccess/htaccess_basic_auth.html</guid>
		<description><![CDATA[ほとんどのレンタルサーバーでは Basic 認証を GUI で設定できるツールを用意されていると思いますが、そういったツールがない環境で設定する機会があったので、メモしておきます。作業はssh で接続して行いました。 設定方法 .htaccess ファイルの作成 [centos@localhost temp]$ vi .htaccess AuthType Basic AuthName "Restr [...]]]></description>
			<content:encoded><![CDATA[<p>ほとんどのレンタルサーバーでは Basic 認証を GUI で設定できるツールを用意されていると思いますが、そういったツールがない環境で設定する機会があったので、メモしておきます。作業はssh で接続して行いました。</p>
<p><span id="more-334"></span></p>
<h2>設定方法</h2>
<p>.htaccess ファイルの作成</p>
<div class="command">
<pre>[centos@localhost temp]$ vi .htaccess
AuthType Basic
AuthName "Restricted Files"
AuthUserFile /var/www/html/temp/.htpasswd
Require user test</pre>
</div>
<p>.htpasswd ファイル（パスワードファイル）の作成</p>
<div class="command">
<pre>[centos@localhost temp]$ htpasswd -c /var/www/html/temp/.htpasswd test
New password:
Re-type new password:
Adding password for user test</pre>
</div>
<p>以上の手順だけで、ドキュメントルート以下の temp ディレクトリに Basic 認証をかけることができました。</p>
<h2>Basic 認証を昨日させているモジュール</h2>
<p>Apache 2.1 より前のバージョンでは、mod_auth によって Basic 認証機能が実装されている模様。そのため、Basic 認証を使うには、httpd.conf で mod_auth.so が読み込まれていることが必要。</p>
<div class="command">
<pre>LoadModule auth_module modules/mod_auth.so</pre>
</div>
<p>Apahe 2.1 以降では、mod_auth_basic モジュールで実装されているようです。今回は Apache 2.0 を使っているので、こちらは確認していません。モジュールのインストールから始める必要のある環境は、通常の WEB サーバーであれば、ほとんどないのではないかと。</p>
<h2>その他必要な設定</h2>
<p>Basic 認証の設定を書き込む場所は、Apache の設定ファイルである httpd.conf に直接書くか、該当のディレクトリに .htaccess ファイルを設置する方法の 2通り。.htaccess を使う場合は、httpd.conf に以下の設定が必要です。</p>
<div class="command">
<pre>AllowOverride AuthConfig</pre>
</div>
<p>もちろん、AllowOverride All でも。 普段は、httpd.conf を触ることはしないので、.htaccess を設置しました。 httpd.conf で設定を行う場合でも、設定項目は同じです。</p>
<h2>使用したディレクティブ</h2>
<blockquote><p>AuthType : ユーザ認証の種類を指定。BasicかDigestを指定。<br />
AuthName : ここで AuthName に指定した文字列が、大部分のブラウザのパスワードダイアログに表示される。<br />
AuthUserFile : 認証に使用するユーザとパスワードの一覧が格納されている、テキストファイルの名前を設定。<br />
Require : 認証に使用するユーザー名を指定。</p></blockquote>
<h2>htpasswd コマンド</h2>
<p>パスワードファイルの作成に必要なコマンド。Apache に付属します。以下の構文で実行します。</p>
<div class="command">
<pre>htpasswd -c Filename username</pre>
</div>
<p>書式が分かれば手入力でも作成はできるが、通常はこのコマンドを使う。主なオプションは、 以下の通り。</p>
<blockquote><p>-c : 新しいパスワードファイルを作成。同名のパスワードファイルがすでに存在する場合は、既存の内容が上書きされる。<br />
-n : テスト実行用のオプション。他のオプションなどの構文エラーがないかなどの確認に用いる。-c と一緒に使うことはできない。<br />
-m : パスワードをファイルに書き込む際、MD5 でハッシュした値を書き込みます。<br />
-d : パスワードをファイルに書き込む際、CRYPT でハッシュします（デフォルト）。<br />
-p : パスワードをファイルに書き込む際、ハッシュせずに、プレーンなテキストで書き込みます。<br />
-s : パスワードをファイルに書き込む際、SHA でハッシュします。<br />
-D : ユーザーを削除します。</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.a-magic-web.com/2010/01/htaccess_basic_auth/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google AJAX Feed API の件数が反映されない</title>
		<link>http://www.a-magic-web.com/2010/01/google_feed_api_itemnum/</link>
		<comments>http://www.a-magic-web.com/2010/01/google_feed_api_itemnum/#comments</comments>
		<pubDate>Sat, 02 Jan 2010 15:05:52 +0000</pubDate>
		<dc:creator>vohedge</dc:creator>
				<category><![CDATA[note]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://www.a-magic-web.com/contents/javascript/google_feed_api_itemnum.html</guid>
		<description><![CDATA[WordPress に最新の記事や、その他RSSで取得できるものをいくつか表示させるためにGoogle AJAX Feed APIを使ってみました。表示自体は問題なくできたのですが、表示件数ではまりました。 表示件数は、feed.setNumEntries(10) のように指定していましたが、変更しても全く反映されず。 そもそもFeed側で件数を少なく設定していないかと思い、Wordpress の [...]]]></description>
			<content:encoded><![CDATA[<p>WordPress に最新の記事や、その他RSSで取得できるものをいくつか表示させるためにGoogle AJAX Feed APIを使ってみました。表示自体は問題なくできたのですが、表示件数ではまりました。</p>
<p><span id="more-332"></span></p>
<p>表示件数は、feed.setNumEntries(10) のように指定していましたが、変更しても全く反映されず。</p>
<p>そもそもFeed側で件数を少なく設定していないかと思い、Wordpress の設定を変えてみたり、いろいろやってみた挙句、やっと気付きました。FeedはGoogleでキャッシュされている。。</p>
<p>そのキャッシュを更新する方法を探していましたが、調べるとすぐに見つかりました。</p>
<blockquote><p>そこで、下記のようにソースに手を加えて、いわゆる「キャッシュ騙し」をします。</p>
<p>このブログのRSSフィードを取得するソースの場合・・・</p>
<p>var feed = new google.feeds.Feed(&#8220;http://www.lepracaun.info/blog/atom.xml<strong>?256</strong>&#8220;);</p>
<p>?の後ろの数字は何でもいいわけです。</p>
<h5><a href="http://www.lepracaun.info/blog/2007/06/google_ajax_feed_api_2.html">Google Ajax Feed API：キャッシュ騙しを使う方法</a></h5>
</blockquote>
<p>すぐに変更した件数が反映されました。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.a-magic-web.com/2010/01/google_feed_api_itemnum/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

