<?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>chibiegg日誌 &#187; サーバー管理</title>
	<atom:link href="http://blog.chibiegg.net/category/%e3%82%b5%e3%83%bc%e3%83%90%e3%83%bc%e7%ae%a1%e7%90%86/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.chibiegg.net</link>
	<description>chibiegg’s Diary</description>
	<lastBuildDate>Fri, 06 Jan 2012 01:51:23 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>nginxでSSL/TLSを使う</title>
		<link>http://blog.chibiegg.net/2011/11/22_09_630.htm</link>
		<comments>http://blog.chibiegg.net/2011/11/22_09_630.htm#comments</comments>
		<pubDate>Tue, 22 Nov 2011 00:51:40 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[日記]]></category>
		<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[CAcert]]></category>
		<category><![CDATA[証明書]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[SNI]]></category>
		<category><![CDATA[SSL]]></category>
		<category><![CDATA[TLS]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=630</guid>
		<description><![CDATA[今回はSSL(https)を使えるようにするような設定をnginxにしてみようと思います。 証明書の取得 本来はSECOMやVeriSign等に有料で証明してもらうのですが、今回は以前にも紹介したCACertを載せときま [...]]]></description>
			<content:encoded><![CDATA[<p>今回はSSL(https)を使えるようにするような設定をnginxにしてみようと思います。</p>
<h3>証明書の取得</h3>
<p>本来はSECOMやVeriSign等に有料で証明してもらうのですが、今回は以前にも紹介したCACertを載せときます。</p>
<ul>
<li><a title="CAcertから証明書をもらおう！(その0:紹介)" href="http://blog.chibiegg.net/2008/06/29_15_154.htm" target="_blank">CAcertから証明書をもらおう！(その0:紹介)</a></li>
<li><a title="CAcertから証明書をもらおう！(その1:アカウントの登録)" href="http://blog.chibiegg.net/2008/06/29_19_156.htm" target="_blank">CAcertから証明書をもらおう！(その1:アカウントの登録)</a></li>
<li><a title="CAcertから証明書をもらおう！(その2:鍵と申請書の作成)" href="http://blog.chibiegg.net/2008/06/29_20_163.htm" target="_blank">CAcertから証明書をもらおう！(その2:鍵と申請書の作成)</a></li>
<li><a title="CAcertから証明書をもらおう！(その3:CAcertから証明書をもらう)" href="http://blog.chibiegg.net/2008/06/29_20_164.htm" target="_blank">CAcertから証明書をもらおう！(その3:CAcertから証明書をもらう)</a></li>
</ul>
<p>ということで、証明書の取得は省略します。とりあえず、サーバーの秘密鍵 server.key と サーバーの証明書 server.cer が手に入った事にします。</p>
<h3>nginxに設定</h3>
<p>nginxでの設定は簡単で、既存の設定をコピーして、80番ではなく443番に変更し、SSLを有効にしてサーバーの鍵・証明書のファイルを指定してあげるだけです。</p>
<p>ちょっとその部分だけ書いてみます。</p>
<pre class="brush: shell; gutter: true">server {
	listen   443 default_server ssl;
	server_name	_;
	ssl_certificate /keys/server.cer;
	ssl_certificate_key /keys/server.key;

	location / {
		この辺は適当に
	}
}</pre>
<p>リバースプロキシとしてnginxとして使っている場合も同様です。</p>
<h3>名前ベースのバーチャルホストを使っている場合</h3>
<p>ドメイン名を複数つかってバーチャルホストを使っている場合もあると思います。SSLではアクセスされたサーバー名がわかる前に証明書を渡さなければならないので、名前ベースのバーチャルホストでSSLは利用できませんでした。</p>
<p>が、SNI(Server Name Indication)というプロトコル拡張ができたので、名前ベースのバーチャルホストでも可能になりました。(ブラウザによっては対応してません)</p>
<p>設定は簡単で、httpと同じくserver_nameを設定するだけです。</p>
<p>リバースプロキシとして使っている場合は、証明書を変えるために、バーチャルホストの数だけServerディレクティブを作ってあげてください。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2011/11/22_09_630.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>nginxでプロキシ&amp;キャッシュサーバー</title>
		<link>http://blog.chibiegg.net/2011/11/17_10_616.htm</link>
		<comments>http://blog.chibiegg.net/2011/11/17_10_616.htm#comments</comments>
		<pubDate>Thu, 17 Nov 2011 01:17:21 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[日記]]></category>
		<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[リバースプロキシ]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[tmpfs]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=616</guid>
		<description><![CDATA[(多分)一般的なWebサーバーであるApacheは複雑な設定も可能で便利なのですが、その分重いのです。 どう重いのかというと、Apacheは一つのプロセスが一つのHTTPリクエストを同期処理で裁いてるのでその間は他の処理 [...]]]></description>
			<content:encoded><![CDATA[<p>(多分)一般的なWebサーバーであるApacheは複雑な設定も可能で便利なのですが、その分重いのです。</p>
<p>どう重いのかというと、Apacheは一つのプロセスが一つのHTTPリクエストを同期処理で裁いてるのでその間は他の処理をしません。なので、同時アクセス数が増えるとApacheはプロセスをどんどん生成します。(あるいは後からきたリクエストを待たせる)</p>
<p>なので、アクセス数が増えると急激にパフォーマンスが落ちるという問題を抱えてます。(ほかにもプロセスIDが足りなくなってどんなにリソースがあっても最大プロセスIDで制限されてしまう)</p>
<p>で、最近話題のハイパフォーマンスWebサーバーが<a title="nginx" href="http://wiki.nginx.org/Main" target="_blank">nginx</a>(えんじんえっくす)です。</p>
<p>nginxは一つのプロセスで複数のリクエストを非同期で同時に処理します。なので、アクセス数が増えてもパフォーマンスが落ちにくいという特性があります。特に静的ファイルの場合は処理のほとんどがI/O待ちなので効果が大きいです。</p>
<p>そこで、PHPとかSVNとか設定がめんどくさいものはApacheに任せておいて、静的なファイルだけをnginxに処理させてみると、Apacheへのリクエスト数は激減するはずです。</p>
<p>例えば、このブログのトップページの場合PHPで生成されるHTMLが一個にたいして、CSSや画像等の静的ファイルが20個近くあります。単純計算で21個のリクエストのうち1個だけがApacheで処理されるのでApacheへのリクエストは約95%削減されます。</p>
<p>では設定してみましょう。OSはUbuntu Server 10.04(64bit)です。Apacheは既にインストール済みで運用されているとします。設定後はnginxがポート80で待ち受けて、Apacheはポート8080で待ち受けるということにします。</p>
<p>(記事の最後でキャッシュファイルをRAMに置くというのもやってみます)</p>
<p><span id="more-616"></span></p>
<h3>nginxのインストール</h3>
<p>そのままaptitudeでインストールすると0.7.65がインストールされてしまうので、nginxのPPAを追加してからインストールします。</p>
<pre class="brush: bash">$ sudo add-apt-repository ppa:nginx/stable
$ sudo apt-get update
$ sudo install nginx</pre>
<p>設定ファイルは /etc/nginx/ にあります。sites-enableとかApacheに似た構造になっています。</p>
<h3>リバースプロキシの設定</h3>
<p>ではこの sites-enabled/default をこのように設定しましょう。</p>
<pre class="brush: text">upstream backend {
    server 127.0.0.1:8080;
}

server {
    listen   80;
    server_name _;
    location / {
        proxy_redirect                         off;
        proxy_set_header Host                $host;
        proxy_set_header X-Real-IP            $remote_addr;
        proxy_set_header X-Forwarded-Host    $host;
        proxy_set_header X-Forwarded-Server    $host;
        proxy_set_header X-Forwarded-For        $proxy_add_x_forwarded_for;
        proxy_pass http://backend;

    }
}</pre>
<p>これはリバースプロキシに必要な設定だけです。すべてのアクセスをローカルのApacheに引き渡してます。</p>
<p>Apacheの方はports.confでリッスンポートを80から8080に変更し、各サイトの設定も80から8080に変更してください。そして、Apacheとnginxを再起動させます。(Apacheを先に8080にしてからnginxを起動させる)</p>
<pre class="brush: bash">$ sudo /etc/init.d/apache restart
$ sudo /etc/init.d/nginx restart</pre>
<p>これでブラウザからアクセスすると、nginxを経由してApacheが処理します。ので、今までとかわらないはずです。</p>
<p>ところが、問題があって、Apacheのアクセスログを見るとアクセス元が127.0.0.1になっちゃってるはずです。これを解消するためにmod_rpafをインストールします。</p>
<pre class="brush: bash">$ sudo apt-get install libapache2-mod-rpaf</pre>
<p>これでApacheを再起動すると正しくアクセス元が扱われているはずです。実はこのためにnginxの設定に X-Real-IP をHTTPヘッダに追加する設定やらを書いているのです。mod_rpafはプロキシサーバーが追加した X-Real-IP ヘッダをアクセス元として扱うモジュールです。</p>
<p>mod_rpafは127.0.0.1からのアクセスだけに対して処理をするのでもし、リバースプロキシが他のホストにあるのであれば /etc/apache2/mods-enabled/rpaf.conf の RPAFproxy_ips をリバースプロキシサーバーのIPアドレスに変更してください。(すべてのX-Real-IPを信用するとアクセス元の偽装ができてしまうためです)</p>
<h3>プロキシキャッシュ</h3>
<p>では、元々の目標であった静的ファイルをnginxでホストする設定をしましょう。本来はnginxが静的ファイルを直接ディスクから取ってくるのがいいのですが、nginxがApacheと違うホストにある場合も考えられますのでその場合でも対応できるように、静的ファイルへのアクセスをキャッシュしておき、2回目以降の同じファイルへのアクセスはApacheに引き渡さないように設定してみます。</p>
<p>defaultをこのように編集してみます。</p>
<pre class="brush: text">
proxy_cache_path /var/cache/nginx/static_file_cache levels=1:2 keys_zone=cache_static_file:128m inactive=7d max_size=512m;
proxy_temp_path /var/cache/nginx/temp;

upstream backend {
    server 127.0.0.1:8080;
}

server {
    listen   80;
    server_name _;
    location / {
        proxy_redirect                         off;

        set $do_not_cache 0;
        if ($request_method != GET) {
            set $do_not_cache 1;
        }
        if ($uri !~* "\.(jpg|png|gif|jpeg|css|js|swf|pdf|html|htm)$") {
            set $do_not_cache 1;
        }
        proxy_no_cache     $do_not_cache;
        proxy_cache_bypass $do_not_cache;
        proxy_cache cache_static_file;
        proxy_cache_key $scheme$host$uri$is_args$args;
        proxy_cache_valid  200 2h;
        proxy_cache_valid  any 1m;

        proxy_set_header Host                $host;
        proxy_set_header X-Real-IP            $remote_addr;
        proxy_set_header X-Forwarded-Host    $host;
        proxy_set_header X-Forwarded-Server    $host;
        proxy_set_header X-Forwarded-For        $proxy_add_x_forwarded_for;
        proxy_pass http://backend;
    }
}</pre>
<p>この設定ではメモリ128M,ファイル最大512Mで、7日間キャッシュするファイルを /var/cache/nginx/static_file_cache に作成してます。</p>
<p>そして、do_not_cache 変数を用意して、0にしておき、GETでのアクセスでない場合と、静的ファイルでは無い場合にキャッシュしないようにその場合は do_not_cache を1にして、proxy_no_cacheを有効にしてます。静的ファイルの判断は正規表現でURLの拡張子を見ています。(注意しなければいけないのが、WordPressのページをパーマネントリンクで.htmlにしている場合です。その場合はキャッシュされないように外しておく必要があります。)</p>
<p>つまり、静的ファイルにGETでアクセスしたものだけキャッシュされます。</p>
<p>proxy_cache_valid はどのステータスのレスポンスをどの期間キャッシュするかを設定する項目で、この場合200なら2<br />
時間、それ以外なら1分キャッシュすることになります。</p>
<p>あとは /var/cache/nginx/ ディレクトリを作成し nginx を再起動するだけです。</p>
<pre class="brush: bash">$ sudo mkdir /var/cache/nginx
$ sudo /etc/init.d/nginx restart</pre>
<p>それでしばらくブラウザからアクセスしてみると、キャッシュディレクトリの容量が増えているはずです。</p>
<pre class="brush: bash">
$ sudo du -ch /var/cache/nginx/static_file_cache
(中略)
91M	/var/cache/nginx/static_file_cache
91M	合計
</pre>
<p>本当にApacheへのアクセスが減っているのかは、Apacheのアクセスログをみてみてください。</p>
<h3>さらに一歩</h3>
<p>もう一歩高速化してみましょう。いまキャッシュファイルは/var/cache/nginxに置かれているので、結局キャッシュからの呼び出しのためにHDDアクセスすることになります。こいつを全部メモリ上においてしまいましょう。</p>
<p><strong><span style="color: #ff0000;">間違えたり、問題が発生するとシステムに問題が起きるかもしれないのでわからないor不安ならやらないほうがいいです。</span></strong></p>
<p>tmpfsを使えば、メモリ上の領域をファイルシステムにマウントすることができます。</p>
<p>/etc/fstab に次の一行を追加してOSを再起動します。</p>
<pre class="brush: text">
tmpfs	/var/cache/nginx	tmpfs	defaults,noatime,mode=1777	0	0
</pre>
<p>そうすると、/var/cache/nginx ディレクトリはRAM上に配置されます。</p>
<p>が、うちのサーバーはSSDにしてあったので効果はわかりませんでした。が、SSDの寿命を延ばす効果はあると思います。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2011/11/17_10_616.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPressはどうすれば速くなるのか、検証実験</title>
		<link>http://blog.chibiegg.net/2011/11/16_22_603.htm</link>
		<comments>http://blog.chibiegg.net/2011/11/16_22_603.htm#comments</comments>
		<pubDate>Wed, 16 Nov 2011 13:52:36 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[日記]]></category>
		<category><![CDATA[さくら]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[FastCGI]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[VPS]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=603</guid>
		<description><![CDATA[さっきの投稿でWordPressが遅い事を書きました。で、先輩のさくらのVPS(nginx+fastcgi)では速いってことも書きました。 ということで、僕も借りてるさくらのVPSで一からセットアップして実験してみました [...]]]></description>
			<content:encoded><![CDATA[<p>さっきの投稿でWordPressが遅い事を書きました。で、先輩のさくらのVPS(nginx+fastcgi)では速いってことも書きました。</p>
<p>ということで、僕も借りてるさくらのVPSで一からセットアップして実験してみました。OSはデフォルトではなくUbuntu 10.04が入ってます。</p>
<p>今回検証したのは、WebサーバーはApache/2.2.14とnginx/1.0.9、RDBMはMySQL(Ver 14.14 Distrib 5.1.41, for debian-linux-gnu (x86_64) using readline 6.1)とPostgreSQL/8.4.9です。なので、合計4通りですね。</p>
<p>Apacheではmod_phpで、nginxでは後ろでspawn-fcgiが動いてます。</p>
<p>で、試してみた結果です。今回検証したいのは静的ファイルではなくPHPの出力なので、画像とかCSSがブラウザでキャッシュされてたりするのは気にしないでください。</p>
<div id="attachment_604" class="wp-caption aligncenter" style="width: 510px"><a href="http://blog.chibiegg.net/wp-content/uploads/2011/11/apache_mysql.png"><img class="size-medium wp-image-604" title="Apache + MySQL + WordPress" src="http://blog.chibiegg.net/wp-content/uploads/2011/11/apache_mysql-500x290.png" alt="Apache + MySQL + WordPress" width="500" height="290" /></a><p class="wp-caption-text">Apache + MySQL + WordPress</p></div>
<div id="attachment_605" class="wp-caption aligncenter" style="width: 510px"><a href="http://blog.chibiegg.net/wp-content/uploads/2011/11/apache_psql.png"><img class="size-medium wp-image-605" title="Apache + PostgreSQL + WordPress" src="http://blog.chibiegg.net/wp-content/uploads/2011/11/apache_psql-500x290.png" alt="Apache + PostgreSQL + WordPress" width="500" height="290" /></a><p class="wp-caption-text">Apache + PostgreSQL + WordPress</p></div>
<div id="attachment_606" class="wp-caption aligncenter" style="width: 510px"><a href="http://blog.chibiegg.net/wp-content/uploads/2011/11/nginx_mysql.png"><img class="size-medium wp-image-606" title="nginx + MySQL + WordPress" src="http://blog.chibiegg.net/wp-content/uploads/2011/11/nginx_mysql-500x290.png" alt="nginx + MySQL + WordPress" width="500" height="290" /></a><p class="wp-caption-text">nginx + MySQL + WordPress</p></div>
<div id="attachment_607" class="wp-caption aligncenter" style="width: 510px"><a href="http://blog.chibiegg.net/wp-content/uploads/2011/11/nginx_psql.png"><img class="size-medium wp-image-607" title="nginx + PostgreSQL + WordPress" src="http://blog.chibiegg.net/wp-content/uploads/2011/11/nginx_psql-500x290.png" alt="nginx + PostgreSQL + WordPress" width="500" height="290" /></a><p class="wp-caption-text">nginx + PostgreSQL + WordPress</p></div>
<p>平均もとってない1回こっきりのアクセスの結果なので互いの比較はそんなに意味がないです。</p>
<p>が、どれもレイテンシが数百ミリ秒あります。これは何回試しても同じでした。</p>
<p>あれ？&#8230;</p>
<p>先輩のVPSと同じ環境のはずなのになんでこんなに違うの？</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2011/11/16_22_603.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPressが遅い&#8230;なぜ？</title>
		<link>http://blog.chibiegg.net/2011/11/16_20_596.htm</link>
		<comments>http://blog.chibiegg.net/2011/11/16_20_596.htm#comments</comments>
		<pubDate>Wed, 16 Nov 2011 11:10:42 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[日記]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[FastCGI]]></category>
		<category><![CDATA[Memcached]]></category>
		<category><![CDATA[mod_php]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=596</guid>
		<description><![CDATA[最近サーバーの設定を変えたり、リバースプロキシをしてる、HTTPのフロントをApacheからnginxに変えたり高速化を試みています。 が、どうしてもこのブログ(にかぎらず、稼働しているWordPress全部)が重い、と [...]]]></description>
			<content:encoded><![CDATA[<p>最近サーバーの設定を変えたり、リバースプロキシをしてる、HTTPのフロントをApacheからnginxに変えたり高速化を試みています。</p>
<p>が、どうしてもこのブログ(にかぎらず、稼働しているWordPress全部)が重い、というより遅いのです。<br />
Memcachedでオブジェクトをキャッシュしてみたりしても改善されず&#8230;</p>
<p>で、Safariで開発ツールの「ネットワーク」をつかって取得の時間を見てみました。</p>
<div id="attachment_597" class="wp-caption aligncenter" style="width: 510px"><a href="http://blog.chibiegg.net/wp-content/uploads/2011/11/network_before.png"><img class="size-medium wp-image-597" title="Apache(mod_php) + WordPress 処理時間" src="http://blog.chibiegg.net/wp-content/uploads/2011/11/network_before-500x289.png" alt="Apache(mod_php) + WordPress 処理時間" width="500" height="289" /></a><p class="wp-caption-text">Apache(mod_php) + WordPress ネットワーク時間</p></div>
<p>ここでPHPのファイルへのアクセスのレイテンシが334msもあることに気づきました。稼働しているどのWordPressもです。</p>
<p>で、WordPressはそうなのかと、さくらのVPSで運用してる先輩のWordPressを見てみると&#8230;</p>
<p>&nbsp;</p>
<div id="attachment_600" class="wp-caption aligncenter" style="width: 510px"><a href="http://blog.chibiegg.net/wp-content/uploads/2011/11/wordpress_fast.png"><img class="size-medium wp-image-600" title="さくらのVPS nginx + WordPress(fast-cgi)" src="http://blog.chibiegg.net/wp-content/uploads/2011/11/wordpress_fast-500x318.png" alt="さくらのVPS nginx + WordPress(fast-cgi)" width="500" height="318" /></a><p class="wp-caption-text">さくらのVPS nginx + WordPress(fast-cgi)</p></div>
<p>速い&#8230;.レイテンシ45msです。静的ファイルはうちのサーバーのほうがレイテンシ含め速いので(どちらも304なので比較していいかな)、ネットワーク等の問題ではないみたい。</p>
<p>(あと、向こうはnginx+fastcgi(swanかな？)+WordPressですが、うちでもnginx+fastcgiにしてみたけど改善せず&#8230;)</p>
<p>なんで？</p>
<p>とりあえず、僕も借りてるさくらのVPSでDBをMySQLからPostgreSQLにしてみたり、いろいろ実験してみます。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2011/11/16_20_596.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ubuntuでレンタルサーバ その2</title>
		<link>http://blog.chibiegg.net/2010/12/31_14_586.htm</link>
		<comments>http://blog.chibiegg.net/2010/12/31_14_586.htm#comments</comments>
		<pubDate>Fri, 31 Dec 2010 05:01:04 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[サーバー]]></category>
		<category><![CDATA[ProFTPD]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=586</guid>
		<description><![CDATA[前回に引き続き、今回はProFTPdをセットアップし、MySQLのテーブルに記録されたユーザー情報で認証できるようにします。 まずはProFTPdのセットアップから。proftpdをapt-getでinstallするとp [...]]]></description>
			<content:encoded><![CDATA[<p>前回に引き続き、今回はProFTPdをセットアップし、MySQLのテーブルに記録されたユーザー情報で認証できるようにします。</p>
<p>まずはProFTPdのセットアップから。proftpdをapt-getでinstallするとproftpdの設定画面が出ます。</p>
<div id="attachment_589" class="wp-caption aligncenter" style="width: 510px"><a href="http://blog.chibiegg.net/wp-content/uploads/2010/12/proftpd.png"><img class="size-medium wp-image-589" title="ProFTPd セットアップ" src="http://blog.chibiegg.net/wp-content/uploads/2010/12/proftpd-500x312.png" alt="ProFTPd セットアップ" width="500" height="312" /></a><p class="wp-caption-text">ProFTPd セットアップ</p></div>
<p>固定IPではないのでIPマスカレードを利用しないといけませんが、そのためにもスタンダードアローンではなくinetd経由にします。</p>
<p>それでは /etc/proftpd/proftpd.conf を書き換えていきます。</p>
<ul>
<li>ServerName を好きな文字列に</li>
<li>ListOptions を &#8220;-l&#8221; に &#8220;-la&#8221; に</li>
<li>PassivePorts をコメントアウトして ポート範囲を決定(デフォルトは49152 65534)</li>
<li>MasqueradeAddress を コメントアウトして hogehoge.net(ドメイン名)に</li>
<li>ServerIdent を off で追加</li>
<li>RootLogin を off に</li>
<li>DefaultRoot を ~ に</li>
<li>RequireValidShell を off に</li>
</ul>
<p>ここまではMySQLによる認証は関係ありません。これからMySQLで認証するための設定を追記します。この部分は「<a title="ProFTPD　～ MySQL + quota 編 ～" href="http://kikuz0u.x0.com/memo/hiki.cgi?ProFTPD%A1%A1%A1%C1+MySQL+%2B+quota+%CA%D4+%A1%C1" target="_blank">にわか鯖管のメモ &#8211; ProFTPD　～ MySQL + quota 編 ～</a>」をもとにというかそのまま。</p>
<p>注意点はmodule.confをいじったときは sudo /etc/init.d/proftpd reload をしないとだめってとこです。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2010/12/31_14_586.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ubuntuでレンタルサーバ その1</title>
		<link>http://blog.chibiegg.net/2010/12/30_23_583.htm</link>
		<comments>http://blog.chibiegg.net/2010/12/30_23_583.htm#comments</comments>
		<pubDate>Thu, 30 Dec 2010 14:12:39 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[サーバー]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=583</guid>
		<description><![CDATA[今日からUbuntuでレンタルサーバを構築するまでの記録を載せようと思います。まぁ気力が続けばですけど。 それと、メモみたいなもので解説はたぶんしないとおもいます。LinuxをCUIで使えるぐらいの知識がないともしかする [...]]]></description>
			<content:encoded><![CDATA[<p>今日からUbuntuでレンタルサーバを構築するまでの記録を載せようと思います。まぁ気力が続けばですけど。</p>
<p>それと、メモみたいなもので解説はたぶんしないとおもいます。LinuxをCUIで使えるぐらいの知識がないともしかすると読めないかもしれないです。解説でなく日記ですね。</p>
<p>レンタルサーバといっても身内、友人、後輩などに貸してるだけですのであまりセキュリティ、特にユーザー間のセキュリティはよろしくない設定をしていくかもしれませんのでそういう意味でもあまり当てにはしないでくださいね。</p>
<p>で、なぜいまさらサーバー構築なのかということなのです。普段はMac OSX Serverの上でこのページ含め個人のサーバと上記のレンタル部分とを稼動させているのですが、いわゆる公私混同の部分の管理がめんどくさくなってきた(なんとなくしんどくなってきた)ので他人の分は仮想環境のUbuntuに移動させてしまおうと思い立ったわけです。</p>
<p>で現状は、Ubuntu 10.04 ServerをLAMP + SSHのみでインストールしたまでです。</p>
<p>このあとユーザー情報をMySQLで管理してユーザーごとにApacheのバーチャルホストを設定し、proftpdはMySQL上の情報で認証できるようにしていくことが目標です。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2010/12/30_23_583.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP 5.2.12 + GD + gettext</title>
		<link>http://blog.chibiegg.net/2010/05/05_01_509.htm</link>
		<comments>http://blog.chibiegg.net/2010/05/05_01_509.htm#comments</comments>
		<pubDate>Tue, 04 May 2010 16:45:42 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=509</guid>
		<description><![CDATA[Mac OSX Leopard Serverのセキュリティーアップデートを実行するとまたPHPが置き換えられてしまった。 ので、GD付きで再コンパイル。と、gettextも有効にしたかったのでついでにいっしょにコンパイル [...]]]></description>
			<content:encoded><![CDATA[<p>Mac OSX Leopard Serverのセキュリティーアップデートを実行するとまたPHPが置き換えられてしまった。</p>
<p>ので、GD付きで再コンパイル。と、gettextも有効にしたかったのでついでにいっしょにコンパイルします。</p>
<p>基本的に<a href="/2010/04/17_21_499.htm">前回の記事</a>にgettextを追加した内容になります。</p>
<ul>
<li>libpng 1.4.1</li>
<li>libjpeg jpeg-8a</li>
<li>gd 2.0.35</li>
<li>gettext 0.17</li>
<li>php 5.2.12</li>
</ul>
<p>バグの修正については前回の記事と同様に適用します。</p>
<pre>
$ cd ~/Downloads/src/libpng-1.4.1
$ CFLAGS="-arch x86_64" CCFLAGS="-arch x86_64" CXXFLAGS="-arch x86_64" LDFLAGS="-arch x86_64" ./configure
$ make
$ sudo make install

$ cd ~/Downloads/src/gd-2.0.35
$ CFLAGS="-arch x86_64" ./configure
$ cp libtool ../jpeg-8a/
$ cd ../jpeg-8a/
$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch x86_64 -g -Os -pipe" CXXFLAGS="-arch x86_64 -g -Os -pipe" LDFLAGS="-arch x86_64 -bind_at_load" ./configure --enable-shared
$ make
$ sudo make install

$ cd ~/Downloads/src/gd-2.0.35
$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch x86_64 -g -Os -pipe" CXXFLAGS="-arch x86_64 -g -Os -pipe" LDFLAGS="-arch x86_64 -bind_at_load" ./configure --with-zlib-dir=/usr --with-jpeg-dir=/usr/local/lib --with-png-dir=/usr/X11R6 --with-freetype-dir=/usr/X11R6 --with-xpm-dir=/usr/X11R6
$ make
$ sudo make install

$ cd ~/Downloads/src/gettext-0.17
$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch x86_64" CCFLAGS="-arch x86_64" CXXFLAGS="-arch x86_64" LDFLAGS="-arch x86_64" ./configure --prefix=/usr
$ make
$ sudo make install

$ cd ~/Downloads/src/php-5.2.12
$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch x86_64 -g -Os -pipe" CXXFLAGS="-arch x86_64 -g -Os -pipe" LDFLAGS="-arch x86_64 -bind_at_load" ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --disable-dependency-tracking --with-apxs2=/usr/sbin/apxs --with-ldap=/usr --with-kerberos=/usr --enable-cli --with-zlib-dir=/usr --enable-trans-sid --with-xml --enable-exif --enable-ftp --enable-mbstring --enable-mbregex --enable-dbx --enable-sockets --with-iodbc=/usr --with-curl=/usr --with-config-file-path=/etc --sysconfdir=/private/etc --with-mysql-sock=/var/mysql --with-mysqli=/usr/bin/mysql_config --with-mysql=/usr --with-openssl --with-xmlrpc --with-xsl=/usr --without-pear --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/X11R6 --with-gd=/usr/local -with-gettext=/usr
$ make
$ make test
$ sudo make install
</pre>
<p>phpinfoを確認すると無事GDとgettextが有効になっていました。<br />
<a href="http://blog.chibiegg.net/wp-content/uploads/2010/05/75e7a990e944c5b14c54bbdac8634fc3.png"><img src="http://blog.chibiegg.net/wp-content/uploads/2010/05/75e7a990e944c5b14c54bbdac8634fc3-500x291.png" alt="" title="phpinfo(GD+gettext)" width="500" height="291" class="aligncenter size-medium wp-image-511" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2010/05/05_01_509.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP 5.2.12 + GD</title>
		<link>http://blog.chibiegg.net/2010/04/17_21_499.htm</link>
		<comments>http://blog.chibiegg.net/2010/04/17_21_499.htm#comments</comments>
		<pubDate>Sat, 17 Apr 2010 12:17:03 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[日記]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=499</guid>
		<description><![CDATA[Mac OSX Server 10.5.8のアップデートをしたらPHPのバージョンが5.2.12にアップされていて、またGDが入っていなかったので再コンパイル。 GDぐらい一緒にコンパイルしておいて欲しいのですが&#82 [...]]]></description>
			<content:encoded><![CDATA[<p>Mac OSX Server 10.5.8のアップデートをしたらPHPのバージョンが5.2.12にアップされていて、またGDが入っていなかったので再コンパイル。</p>
<p>GDぐらい一緒にコンパイルしておいて欲しいのですが&#8230;今回つかったライブラリのバージョンは以下の通り。</p>
<ul>
<li>libpng 1.4.1</li>
<li>libjpeg jpeg-8a</li>
<li>gd 2.0.35</li>
<li>php 5.2.12</li>
</ul>
<p>今回は前回のMacにおけるiconv関係バグに加え、DNS関係のバグ(<a href="http://bugs.php.net/bug.php?id=50508">Bug #50508</a>)が有り、php-5.2.12/ext/standard/dns.c の58行目からを以下のように修正しました。前回のiconvについての修正も行う必要があります。</p>
<pre>#if HAVE_ARPA_NAMESER_COMPAT_H
#include
#endif</pre>
<p>を</p>
<pre>#if HAVE_ARPA_NAMESER_COMPAT_H
#ifndef HAVE_ARPA_NAMESER_H
#include
#endif
#endif</pre>
<p>に変更してから以下のようにコンパイルしました。</p>
<pre>$ cd ~/Downloads/src/libpng-1.2.40
$ CFLAGS="-arch x86_64" CCFLAGS="-arch x86_64" CXXFLAGS="-arch x86_64" LDFLAGS="-arch x86_64" ./configure
$ make
$ sudo make install

$ cd ~/Downloads/src/gd-2.0.35
$ CFLAGS="-arch x86_64" ./configure
$ cp libtool ../jpeg-8a/
$ cd ../jpeg-8a/
$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch x86_64 -g -Os -pipe" CXXFLAGS="-arch x86_64 -g -Os -pipe" LDFLAGS="-arch x86_64 -bind_at_load" ./configure --enable-shared
$ make
$ sudo make install

$ cd ~/Downloads/src/gd-2.0.35
$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch x86_64 -g -Os -pipe" CXXFLAGS="-arch x86_64 -g -Os -pipe" LDFLAGS="-arch x86_64 -bind_at_load" ./configure --with-zlib-dir=/usr --with-jpeg-dir=/usr/local/lib --with-png-dir=/usr/X11R6 --with-freetype-dir=/usr/X11R6 --with-xpm-dir=/usr/X11R6
$ make
$ sudo make install

$ cd ~/Downloads/src/php-5.2.12
$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch x86_64 -g -Os -pipe" CXXFLAGS="-arch x86_64 -g -Os -pipe" LDFLAGS="-arch x86_64 -bind_at_load" ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --disable-dependency-tracking --with-apxs2=/usr/sbin/apxs --with-ldap=/usr --with-kerberos=/usr --enable-cli --with-zlib-dir=/usr --enable-trans-sid --with-xml --enable-exif --enable-ftp --enable-mbstring --enable-mbregex --enable-dbx --enable-sockets --with-iodbc=/usr --with-curl=/usr --with-config-file-path=/etc --sysconfdir=/private/etc --with-mysql-sock=/var/mysql --with-mysqli=/usr/bin/mysql_config --with-mysql=/usr --with-openssl --with-xmlrpc --with-xsl=/usr --without-pear --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/X11R6 --with-gd=/usr/local
$ make
$ make test
$ sudo make install</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2010/04/17_21_499.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mac OS X Leopard Server で WordPress の自動アップデート</title>
		<link>http://blog.chibiegg.net/2010/01/11_12_462.htm</link>
		<comments>http://blog.chibiegg.net/2010/01/11_12_462.htm#comments</comments>
		<pubDate>Mon, 11 Jan 2010 03:09:52 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[FTP]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[OSX Server]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=462</guid>
		<description><![CDATA[以前の記事で、WordPressでの自動アップデートを成功させるためには、FTP_BASEやFTP_CONTENT_DIRやFTP_PLUGIN_DIRを定義すればよいと記事に書きました。 が、その記事に書いた通りLin [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.chibiegg.net/2009/02/24_20_259.htm">以前の記事で</a>、WordPressでの自動アップデートを成功させるためには、FTP_BASEやFTP_CONTENT_DIRやFTP_PLUGIN_DIRを定義すればよいと記事に書きました。</p>
<p>が、その記事に書いた通りLinux(Debian)では正しく動作していたのにLeopard Serverにしてからうまく行かなくなっていました。</p>
<p>しかも「<strong>ディレクトリが見つかりません</strong>」というようなわかりやすいエラーではなく「<strong>ファイルをコピーできませんでした</strong>」というエラー&#8230;<br />
表示されるパスには間違いはないし、パーミッションも777にしてみても(すでになっている)駄目。</p>
<p>ちなみに「<strong>ファイルをコピーできませんでした</strong>」というエラーはPHPがセーフモードで動いている場合によく出るそうですが、今回はセーフモードで動かしてはいません。</p>
<p>で、諦めていたのですが、いっそのことFTP_BASEやFTP_CONTENT_DIRやFTP_PLUGIN_DIRの定義をコメントアウト(削除)してみるとなんとすんなり成功。</p>
<p><strong>（下部の追記参照）</strong></p>
<p>ということで、セーフモードでもないのに「<strong>ファイルをコピーできませんでした</strong>」と言われた時は一度FTPのディレクトリ設定を削除してみるのも手かもしれません。</p>
<p><strong><span style="color: #ff0000;">追記</span></strong></p>
<p>どうやらCodexのFTP_BASE等の説明には「インストールした WordPress のベースフォルダへのフルパス。」と書いてあるので&#8221;サーバー内でのフルパス&#8221;だと思っていたのですが、<span style="text-decoration: line-through;">少なくともOSXでは&#8221;FTPでアクセスした時のパス&#8221;が正しいようです。（OSの問題では無いようなな気もしますが）</span></p>
<p>Codexにも「FTPユーザとしてサーバ上にある各フォルダへのパスが分かっていれば&#8230;」とあるので&#8221;FTPでアクセスした時のパス&#8221;が正しいようです。</p>
<p>つまり「/Users/name/Sites/wp-content/」ではなくFTPから見た時のパスなので「/Sites/wp-content/」とするとFTP_BASE等を定義しても自動アップデートできました。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2010/01/11_12_462.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSX Server 10.5.8 で PHP+GD</title>
		<link>http://blog.chibiegg.net/2009/11/13_22_432.htm</link>
		<comments>http://blog.chibiegg.net/2009/11/13_22_432.htm#comments</comments>
		<pubDate>Fri, 13 Nov 2009 13:41:19 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[GD]]></category>
		<category><![CDATA[Leopard]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[OSX Server]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=432</guid>
		<description><![CDATA[アップデートしたときにPHPのバージョンも変更(5.2.10)されていたことに気づかず、GDが入っていないPHPに置き換えられていたので再度PHPをGD付きでコンパイルしたのでメモ。 各ライブラリの今回利用したバージョン [...]]]></description>
			<content:encoded><![CDATA[<p>アップデートしたときにPHPのバージョンも変更(5.2.10)されていたことに気づかず、GDが入っていないPHPに置き換えられていたので再度PHPをGD付きでコンパイルしたのでメモ。</p>
<p>各ライブラリの今回利用したバージョンは以下の通り。</p>
<ul>
<li>libpng 1.2.40</li>
<li>libjpeg jpeg-7</li>
<li>gd 2.0.35</li>
<li>php 5.2.10</li>
</ul>
<p>PHPをMacでコンパイルするとlibiconv関係でリンク時にエラーが出る問題があるそうなのでext/iconv/iconv.cの196行目あたりを以下のように書き換えてからコンパイルに移ります。(<a href="http://bugs.php.net/bug.php?id=49267">参照:PHP Bugs: #49267: Linking fails for iconv: &#8220;Undefined symbols: _libiconv&#8221;</a>)<br />
Before</p>
<blockquote><p>#ifdef HAVE_LIBICONV<br />
#define iconv libiconv<br />
#endif</p></blockquote>
<p>After</p>
<blockquote><p>#ifdef HAVE_LIBICONV<br />
#define iconv iconv<br />
#endif</p></blockquote>
<p>実行した手順だけを載せます。</p>
<pre><code>
$ cd ~/Downloads/src/libpng-1.2.40
$ CFLAGS="-arch x86_64" CCFLAGS="-arch x86_64" CXXFLAGS="-arch x86_64" LDFLAGS="-arch x86_64" ./configure
$ make
$ sudo make install

$ cd ~/Downloads/src/gd-2.0.35
$ CFLAGS="-arch x86_64" ./configure
$ cp libtool ../jpeg-7/
$ cd ../jpeg-7/
$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch x86_64 -g -Os -pipe" CXXFLAGS="-arch x86_64 -g -Os -pipe" LDFLAGS="-arch x86_64 -bind_at_load" ./configure --enable-shared
$ make
$ sudo make install

$ cd ~/Downloads/src/gd-2.0.35
$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch x86_64 -g -Os -pipe" CXXFLAGS="-arch x86_64 -g -Os -pipe" LDFLAGS="-arch x86_64 -bind_at_load" ./configure --with-zlib-dir=/usr --with-jpeg-dir=/usr/local/lib --with-png-dir=/usr/X11R6 --with-freetype-dir=/usr/X11R6 --with-xpm-dir=/usr/X11R6
$ make
$ sudo make install

$ cd ~/Downloads/src/php-5.2.10
$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch x86_64 -g -Os -pipe" CXXFLAGS="-arch x86_64 -g -Os -pipe" LDFLAGS="-arch x86_64 -bind_at_load" ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --disable-dependency-tracking --with-apxs2=/usr/sbin/apxs --with-ldap=/usr --with-kerberos=/usr --enable-cli --with-zlib-dir=/usr --enable-trans-sid --with-xml --enable-exif --enable-ftp --enable-mbstring --enable-mbregex --enable-dbx --enable-sockets --with-iodbc=/usr --with-curl=/usr --with-config-file-path=/etc --sysconfdir=/private/etc --with-mysql-sock=/var/mysql --with-mysqli=/usr/bin/mysql_config --with-mysql=/usr --with-openssl --with-xmlrpc --with-xsl=/usr --without-pear --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/X11R6 --with-gd=/usr/local
$ make
$ make test
$ sudo make install
</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2009/11/13_22_432.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSX Server 10.5.7 で PHP+GD</title>
		<link>http://blog.chibiegg.net/2009/07/06_21_372.htm</link>
		<comments>http://blog.chibiegg.net/2009/07/06_21_372.htm#comments</comments>
		<pubDate>Mon, 06 Jul 2009 12:27:26 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Leopard]]></category>
		<category><![CDATA[OSX Server]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=372</guid>
		<description><![CDATA[先日Mac OSX Server Leopard を更新してからWordPressでサムネイルが作成されなくなったなぁと思っていたのですが、アップデートの際に以前GDをServerにインストールしたときからPHPのバージ [...]]]></description>
			<content:encoded><![CDATA[<p>先日Mac OSX Server Leopard を更新してからWordPressでサムネイルが作成されなくなったなぁと思っていたのですが、アップデートの際に<a href="http://blog.chibiegg.net/2009/04/03_21_263.htm">以前GDをServerにインストールしたとき</a>からPHPのバージョンが5.2.8に変更されていたのでまたGDのついていないPHPのバイナリに交換されてしまったようです。ということで、<a href="http://blog.chibiegg.net/2009/04/03_21_263.htm">以前</a>と同様にGDをインストールしました。方法は以前の「<a href="http://blog.chibiegg.net/2009/04/03_21_263.htm">OSX Server 10.5 (64bit)でPHP+GD</a>」を参照していただくとして、今回利用した各ライブラリのバージョンは以下の通りです。それをメモするだけなので日記ということで、適当な更新です。</p>
<ul>
<li>PHP 5.2.8</li>
<li>libgd 2.0.35</li>
<li>libpng 1.2.37</li>
<li>libjpeg(jpeg v7)</li>
</ul>
<p>コンパイル時にはいくつか注意点が&#8230;</p>
<p><span id="more-372"></span></p>
<p>jpeg-6bではなくjpeg-7にディレクトリ名が変っていることに注意します。また、libjpegのconfigureの際に複数のアーキテクチャーの指定ができなくなったようなので以下のようにしました。</p>
<p>$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS=&#8221;-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp&#8221; CCFLAGS=&#8221;-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe&#8221; CXXFLAGS=&#8221;-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe&#8221; LDFLAGS=&#8221;-arch ppc -arch ppc64 -arch i386 -arch x86_64 -bind_at_load&#8221; ./configure &#8211;enable-shared</p>
<p>それに伴いlibgdのconfigureでも複数のアーキテクチャーを指定できませんので以下のようにします。</p>
<p>$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS=&#8221;-arch x86_64 -g -Os -pipe -no-cpp-precomp&#8221; CCFLAGS=&#8221;-arch x86_64 -g -Os -pipe&#8221; CXXFLAGS=&#8221;-arch x86_64 -g -Os -pipe&#8221; LDFLAGS=&#8221;-arch x86_64 -bind_at_load&#8221; ./configure &#8211;with-zlib-dir=/usr &#8211;with-jpeg-dir=/usr/local/lib &#8211;with-png-dir=/usr/X11R6 &#8211;with-freetype-dir=/usr/X11R6 &#8211;with-xpm-dir=/usr/X11R6</p>
<p>phpのmake後にはmake testも実行しておきます。</p>
<p>これで無事GDが使えるようになりました。標準で組み込んでくれるといいのですが&#8230;</p>
<p>phpinfoで確認するとこのようになっています。</p>
<div class="mceTemp mceIEcenter">
<dl id="attachment_375" class="wp-caption aligncenter" style="width: 27px;">
<dt class="wp-caption-dt"><a href="http://blog.chibiegg.net/wp-content/uploads/2009/07/phpinfo.png"><img class="size-medium wp-image-375" title="phpinfo(PHP+GD)" src="http://blog.chibiegg.net/wp-content/uploads/2009/07/phpinfo-17x300.png" alt="phpinfo(PHP+GD)" width="17" height="300" /></a></dt>
</dl>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2009/07/06_21_372.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ImageMagicのインストール</title>
		<link>http://blog.chibiegg.net/2009/04/04_10_271.htm</link>
		<comments>http://blog.chibiegg.net/2009/04/04_10_271.htm#comments</comments>
		<pubDate>Sat, 04 Apr 2009 01:43:36 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[OSX Server]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=271</guid>
		<description><![CDATA[MediaWikiでサムネイルを作成するためにImageMagic(convertコマンド)が必要だったのでインストールします。環境はOSX Server 10.5.6 x86(64bit)です。 ImageMagicの [...]]]></description>
			<content:encoded><![CDATA[<p>MediaWikiでサムネイルを作成するためにImageMagic(convertコマンド)が必要だったのでインストールします。環境はOSX Server 10.5.6 x86(64bit)です。</p>
<p>ImageMagicのページにはMacOSX用のバイナリも用意されているのですが、インストールの方法がまずかったのか利用できなかったのでソースからコンパイルします。</p>
<p>利用できなかった理由は<br />
<code>$ convert -list format</code><br />
で対応フォーマットが表示できるのですが、一つもありませんでした。</p>
<p>一つ前の記事でlibjpegとlibpngがインストールされていることが必要です。<br />
適当な場所にソースをダウンロードして解凍しておきます。この記事では「ImageMagick-6.5.1-0.tar.gz」を利用しました。i386でもいいのですが、せっかくコンパイルするので64bitにしてみます。</p>
<p>ではコンパイルしていきます。x86_64でなくi386であればconfigureのオプションは全て外してください。<br />
<code>$ cd ImageMagick-6.5.1-0<br />
$ CFLAGS="-arch x86_64" CCFLAGS="-arch x86_64" CXXFLAGS="-arch x86_64" LDFLAGS="-arch x86_64" ./configure<br />
$ make<br />
$ sudo make install</code><br />
これで終了です。<br />
<code>$ convert -list format</code><br />
を実行するとずらずらと対応フォーマット一覧が出てきたので成功です。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2009/04/04_10_271.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSX Server 10.5 (64bit)でPHP+GD</title>
		<link>http://blog.chibiegg.net/2009/04/03_21_263.htm</link>
		<comments>http://blog.chibiegg.net/2009/04/03_21_263.htm#comments</comments>
		<pubDate>Fri, 03 Apr 2009 12:16:42 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[OSX Server]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=263</guid>
		<description><![CDATA[OSX Server 10.5を導入したのですが、PHPにGDが入ってないのでlibpng,libjpeg,libgdをコンパイルし、phpを再コンパイルします。 が、apacheが64bitで動いていたので少し難儀した [...]]]></description>
			<content:encoded><![CDATA[<p>OSX Server 10.5を導入したのですが、PHPにGDが入ってないのでlibpng,libjpeg,libgdをコンパイルし、phpを再コンパイルします。<br />
が、apacheが64bitで動いていたので少し難儀したのでメモを。</p>
<p>基本的には<a href="http://y2web.net/blog/computer/sysadmin/osxserver-php-gd-715/">こちら</a>のサイトに従うのですが、アーキテクチャーの指定は<a href="http://log.metatype.jp/?cat=10">こちら</a>のサイトを参考に進めていきます。<br />
ただし、失敗しても良いように既存の「/usr/libexec/apache2/libphp5.so」はバックアップしておいてください。<br />
<span id="more-263"></span><br />
ソースの準備<br />
PHP 5.2.6(既にインストールされているものと同一)<br />
gd 2.0.35<br />
libpng 1.2.35<br />
jpeg-6b<br />
以上を~/srcにでもダウンロードし、全て解凍しておきます。</p>
<p><strong>まずはlibpngのコンパイル</strong><br />
<code>$ cd libpng-1.2.35<br />
$ CFLAGS="-arch x86_64" CCFLAGS="-arch x86_64" CXXFLAGS="-arch x86_64" LDFLAGS="-arch x86_64" ./configure<br />
$ make<br />
$ sudo make install</code></p>
<p><strong>次にlibjpegのコンパイル</strong><br />
<code>$ cd ../gd-2.0.35<br />
$ CFLAGS="-arch x86_64" ./configure<br />
$ cp libtool ../jpeg-6b/.<br />
$ cd ../jpeg-6b<br />
$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe" CXXFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe" LDFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -bind_at_load" ./configure --enable-shared<br />
$ make<br />
$ sudo make install</code></p>
<p><strong>次にlibgdのコンパイル</strong><br />
<code>$ cd ../gd-2.0.35<br />
$ sudo ln -s /usr/X11R6/include/fontconfig /usr/local/include<br />
$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe" CXXFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe" LDFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -bind_at_load" ./configure --with-zlib-dir=/usr --with-jpeg-dir=/usr/local/lib --with-png-dir=/usr/X11R6 --with-freetype-dir=/usr/X11R6 --with-xpm-dir=/usr/X11R6<br />
$ make<br />
$ sudo make install</code></p>
<p><strong>最後にPHPのコンパイル</strong><br />
<code>$ cd ../php-5.2.6<br />
$ MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch x86_64 -g -Os -pipe" CXXFLAGS="-arch x86_64 -g -Os -pipe" LDFLAGS="-arch x86_64 -bind_at_load" ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --disable-dependency-tracking --with-apxs2=/usr/sbin/apxs --with-ldap=/usr --with-kerberos=/usr --enable-cli --with-zlib-dir=/usr --enable-trans-sid --with-xml --enable-exif --enable-ftp --enable-mbstring --enable-mbregex --enable-dbx --enable-sockets --with-iodbc=/usr --with-curl=/usr --with-config-file-path=/etc --sysconfdir=/private/etc --with-mysql-sock=/var/mysql --with-mysqli=/usr/bin/mysql_config --with-mysql=/usr --with-openssl --with-xmlrpc --with-xsl=/usr --without-pear --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/X11R6 --with-gd=/usr/local<br />
$ make<br />
$ sudo make install</code></p>
<p>サーバー管理からWebサーバーの再起動ができれば問題ありません。phpinfoでgdが有効になっていることを確認できれば成功です。<br />
もしもアーキテクチャーが間違っているとwrong architectureなどとログに記録され起動できません。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2009/04/03_21_263.htm/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>WordPressの自動アップデートエラーについて</title>
		<link>http://blog.chibiegg.net/2009/02/24_20_259.htm</link>
		<comments>http://blog.chibiegg.net/2009/02/24_20_259.htm#comments</comments>
		<pubDate>Tue, 24 Feb 2009 11:40:18 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[FTP]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=259</guid>
		<description><![CDATA[WordPressにはプラグインや本体をFTP経由で自動でアップデートする機能がありますが、だいたいは「ディレクトリが見つかりません」といわれてしまいます。 そんな場合は「wp-config.php」に以下の三行を追加す [...]]]></description>
			<content:encoded><![CDATA[<p>WordPressにはプラグインや本体をFTP経由で自動でアップデートする機能がありますが、だいたいは「ディレクトリが見つかりません」といわれてしまいます。</p>
<p>そんな場合は「<strong>wp-config.php</strong>」に以下の三行を追加するだけで直ります。<br />
上から順番に「FTPのルートディレクトリ」「wp-contentディレクトリ」「pluginsディレクトリ」へのパスです。</p>
<blockquote>
<pre>define('FTP_BASE', '/path/to/wordpress/');
define('FTP_CONTENT_DIR', '/path/to/wordpress/wp-content/');
define('FTP_PLUGIN_DIR', '/path/to/wordpress/wp-content/plugins/');</pre>
</blockquote>
<p>長いことあきらめていたのですが公式サイトの<a title="wp-config.php_の編集" href="http://wpdocs.sourceforge.jp/wp-config.php_の編集" target="_blank">「wp-config.php_の編集」</a>に説明がありました。</p>
<p>明日は前期入試です</p>
<p><strong>追記（2010年1月11日）</strong><br />
どうやらFTP_BASE等でのフルパスというのはFTPから見た時のパスのような気がします。<br />
<span style="text-decoration: line-through;"> Codexの説明には「インストールした WordPress のベースフォルダへのフルパス。」としか書いてないのでどちらかわかりませんが、試してダメならFTPで接続したときのパスを入れてみてください。</span></p>
<p>Codexにも「FTPユーザとしてサーバ上にある各フォルダへのパスが分かっていれば&#8230;」とあるのでこれで正しいと思われます。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2009/02/24_20_259.htm/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>CAcertから証明書をもらおう！(その0:紹介)</title>
		<link>http://blog.chibiegg.net/2008/06/29_15_154.htm</link>
		<comments>http://blog.chibiegg.net/2008/06/29_15_154.htm#comments</comments>
		<pubDate>Sun, 29 Jun 2008 06:47:19 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[CAcert]]></category>
		<category><![CDATA[証明書]]></category>
		<category><![CDATA[SSL]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=154</guid>
		<description><![CDATA[CAcertとはこちらの記事が詳しいですが簡単に言うと無料でX.509セキュリティ証明書を発行してくれる認証機関です。 本来証明書は「Verisign」や「セコム」などに多くの費用を払わないともらえず、どうしてもその費用 [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.cacert.org/index.php?id=0&amp;lang=ja_JP">CAcert</a>とは<a href="http://opentechpress.jp/security/05/01/25/0522233.shtml">こちらの記事</a>が詳しいですが簡単に言うと無料でX.509セキュリティ証明書を発行してくれる認証機関です。<br />
<a href='http://blog.chibiegg.net/wp-content/uploads/2008/06/cacert.png'><img src="http://blog.chibiegg.net/wp-content/uploads/2008/06/cacert.png" alt="CAcertロゴマーク" title="CAcert" class="alignnone size-medium wp-image-155" /></a><br />
本来証明書は「Verisign」や「セコム」などに多くの費用を払わないともらえず、どうしてもその費用を払ってでもセキュリティを必要とするサーバー(本社と支店を接続したり、Amazonなどのネットショッピングサイト、あるいは銀行のネットバンキングなど)にしか導入できないものですが、CAcertボランティアによってすすめられている無料の認証局です。</p>
<p>もちろん上記のような本当にセキュアな通信が必要な場面では使えませんが、以前<a href="http://blog.chibiegg.net/2007/11/12_16_29.htm">この投稿</a>でApacheでSSLを有効にする際には「個人で勝手に作った認証局」から発行された（発行した？）「えせ証明書」を利用しましたが、それとは比較してはいけないぐらい十分すぎる証明書が頂け、利用できます。<br />
<span id="more-154"></span><br />
ということで記事は長くなりそうなので、シリーズに分けて以下の順に進めていきたいと思います。<br />
ついでにProFTPDもSSL対応にしてしまいます。メールサーバーは設定しません。<br />
(「＊一部内容を変更してお届けしています」という注記がいつ入るかわかりませんが&#8230;)</p>
<p><strong>1.</strong>CAcertにアカウントを登録する。<br />
<strong>2.</strong>証明書を発行してもらうための「申請書」(CSR)を作成する。<br />
<strong>3.</strong>証明書をもらう。<br />
<strong>4.</strong>Apacheに証明書を登録する。<br />
<strong>5.</strong>ProFTPDに証明書を登録し、FTPのSSLを有効にする。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2008/06/29_15_154.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>同一タイトルでの新規投稿不可問題</title>
		<link>http://blog.chibiegg.net/2008/06/29_11_153.htm</link>
		<comments>http://blog.chibiegg.net/2008/06/29_11_153.htm#comments</comments>
		<pubDate>Sun, 29 Jun 2008 02:52:48 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=153</guid>
		<description><![CDATA[なぜか、他のWordPressの動作テストをしていたら「公開」ができなくなったので(詳細は割愛)こっちのも確認。 「保存」は動作確認。 「公開」も動作確認。 あれ？ 追記 原因 同じタイトルの記事を新規投稿(保存ではなく [...]]]></description>
			<content:encoded><![CDATA[<p>なぜか、他のWordPressの動作テストをしていたら「公開」ができなくなったので(詳細は割愛)こっちのも確認。</p>
<p>「保存」は動作確認。<br />
「公開」も動作確認。<br />
あれ？</p>
<p><strong>追記</strong><br />
<strong><em>原因</em></strong><br />
同じタイトルの記事を新規投稿(保存ではなく公開)すると発生するらしい。<br />
だから「新規投稿テスト」とテストしたときは問題なかったのだ。<br />
<a href="http://ja.forums.wordpress.org/topic/44">こちら</a>に報告も発見。</p>
<p><strong><em>対処</em></strong><br />
今後新規記事を作る際に投稿できない場合はタイトルを変更して投稿。<br />
どうしてもそのタイトルにしたい場合は一度公開してから変更。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2008/06/29_11_153.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ProFTPDの導入</title>
		<link>http://blog.chibiegg.net/2008/06/19_23_150.htm</link>
		<comments>http://blog.chibiegg.net/2008/06/19_23_150.htm#comments</comments>
		<pubDate>Thu, 19 Jun 2008 14:53:32 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[サーバー]]></category>
		<category><![CDATA[ProFTPD]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=150</guid>
		<description><![CDATA[自分だけがサーバーのファイルをいじるだけならSSH、SFTPやnetatalkのみで十分だったのですが、後輩たちがクラブのページを作成する場所をつくるにあたってFTPを導入しようと思ったのです。が、なかなかPassive [...]]]></description>
			<content:encoded><![CDATA[<p>自分だけがサーバーのファイルをいじるだけならSSH、SFTPやnetatalkのみで十分だったのですが、後輩たちがクラブのページを作成する場所をつくるにあたってFTPを導入しようと思ったのです。が、なかなかPassiveモードが利用できず、ルーター越えでの接続ができませんでした。<br />
で、ProFTPDの再インストールからはじめ、やっと今回成功したのでメモしておきます。<br />
構成としてはxinetd経由で起動し、ファイルによる仮想ユーザーということで。<br />
(仮想ユーザーについてはまた今度&#8230;)</p>
<p>内容は2点です。<br />
１．ProFTPDとxinetdの設定ファイル<br />
２．iptablesのためにモジュールの読み込み</p>
<p><span id="more-150"></span><br />
結局最後行き着いたのは以下の設定ファイルの状態。(一部セキュリティのため改変)<br />
<strong>/etc/proftpd/proftpd.conf</strong></p>
<pre><code>Include /etc/proftpd/modules.conf

UseIPv6				off

ServerName			"chibiegg FTP Server"
ServerType			inetd
DeferWelcome			off

MultilineRFC2228		on
DefaultServer			on
ShowSymlinks			on

TimeoutNoTransfer		600
TimeoutStalled			600
TimeoutIdle			1200

DisplayLogin                    welcome.msg
DisplayFirstChdir               .message
ListOptions                	"-al"

DenyFilter			\*.*/

UseReverseDNS			off

Port				21

AllowForeignAddress on
DefaultRoot ~

PassivePorts                    23000 25000

MasqueradeAddress		****.******.net

MaxInstances			30

User				******
Group				******
Umask				022  022
AllowOverwrite			on

TransferLog /var/log/proftpd/xferlog
SystemLog   /var/log/proftpd/proftpd.log

LogFormat allinfo "%t :  %u (%a [%h]) : [%s], %T, %m (%f)"
LogFormat write "%t : %u : %F (%a)"
LogFormat read "%t : %u : %F (%a)"
LogFormat auth "%t : %u (%a [%h])"

ExtendedLog /var/log/proftpd/all.log ALL allinfo
ExtendedLog /var/log/proftpd/write.log WRITE write
ExtendedLog /var/log/proftpd/read.log  READ read
ExtendedLog /var/log/proftpd/auth.log AUTH auth

&lt;ifmodule mod_tls.c&gt;
TLSEngine off
&lt;/ifmodule&gt;

&lt;ifmodule mod_quota.c&gt;
QuotaEngine on
&lt;/ifmodule&gt;

&lt;ifmodule mod_ratio.c&gt;
Ratios on
&lt;/ifmodule&gt;

&lt;ifmodule mod_delay.c&gt;
DelayEngine on
&lt;/ifmodule&gt;

&lt;ifmodule mod_ctrls.c&gt;
ControlsEngine        on
ControlsMaxClients    2
ControlsLog           /var/log/proftpd/controls.log
ControlsInterval      5
ControlsSocket        /var/run/proftpd/proftpd.sock
&lt;/ifmodule&gt;

&lt;ifmodule mod_ctrls_admin.c&gt;
AdminControlsEngine on
&lt;/ifmodule&gt;

&lt;limit LOGIN&gt;
	Order allow, deny
	Allow from all
&lt;/limit&gt;

AuthOrder mod_auth_file.c

AuthUserFile /etc/proftpd/ftpd.passwd
AuthGroupFile /etc/proftpd/ftpd.group</code></pre>
<p><strong>/etc/xinetd.d/proftpd</strong></p>
<pre><code>service ftp
{
        disable     	= no
        socket_type     = stream
        protocol        = tcp
        wait            = no
        user            = root
        server          = /usr/sbin/in.proftpd
}</code></pre>
<p>実際ローカルからPassiveモードを利用しない場合は簡単に接続できていたのだが、どうしてもPassiveモードでは接続できなかった。(もちろんログインはできるが一覧の取得などができない。)これではマスカレードを使ったルーター越えができない。</p>
<p>結果として原因は2つありました。<br />
まず一つはProFTPDの設定の問題。(上の設定ファイルは修正後)<br />
ProFTPDには関係の無いIPアドレスからのPassiveモード用ポートへのアクセスは拒否する機能が付いているのですがこれが悪さをしていました。<br />
Passiveモードタイムアウト後のログを見るとこんなエラーがありました。<br />
<code>
<pre>SECURITY VIOLATION: Passive connection from ***.***.***.*** rejected.</pre>
<p></code><br />
ということでセキュリティー的には避けたいところですが、この機能を無効にしました。<br />
「/etc/proftpd/proftpd.conf」に以下の一行を追加。<br />
<code>
<pre>AllowForeignAddress on</pre>
<p></code>(<a href="http://landisk.kororo.jp/diary/33_portforward.php">こちら</a>のサイトに記載されていました。ありがとうございます。)</p>
<p>もうひとつはiptablesです。FTPを通すためには<strong>ポートを開けるだけでなく</strong>「ip_conntrack_ftp」と「ip_nat_ftp」の2つのモジュールを読み込む必要があるらしいのです。<br />
ということで「/etc/modules」ファイルに以下の2行を追記しました。</p>
<pre><code>ip_conntrack_ftp
ip_nat_ftp</code></pre>
<p>これでサーバーを再起動するとPassiveモードでもデータ転送ができるようになりました。<br />
悩みの種一つ解消。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2008/06/19_23_150.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPressの管理画面をLeopard風に</title>
		<link>http://blog.chibiegg.net/2008/06/19_00_145.htm</link>
		<comments>http://blog.chibiegg.net/2008/06/19_00_145.htm#comments</comments>
		<pubDate>Wed, 18 Jun 2008 15:02:10 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[日記]]></category>
		<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/?p=145</guid>
		<description><![CDATA[Leopardぽいスキンを探しているときに見つけたものです。 おもしろそうだったので入れてみました。 「LepardAdmin」をインストールすると管理画面が以下のような感じになります。 ダウンロードはこちらの公式サイト [...]]]></description>
			<content:encoded><![CDATA[<p>Leopardぽいスキンを探しているときに見つけたものです。<br />
おもしろそうだったので入れてみました。<br />
「LepardAdmin」をインストールすると管理画面が以下のような感じになります。</p>
<p><a href='http://blog.chibiegg.net/wp-content/uploads/2008/06/leopardadmin.jpg'><img src="http://blog.chibiegg.net/wp-content/uploads/2008/06/leopardadmin-300x198.jpg" alt="LeopardAdmin導入例" title="LeopardAdmin" width="300" height="198" class="alignnone size-medium wp-image-147" /></a></p>
<p>ダウンロードは<a href="http://www.teddyhwang.com/resources/leopardadmin/">こちら</a>の公式サイトから。<br />
<a href="http://www.teddyhwang.com/resources/leopardadmin/">Teddy Hwang » Leopard Admin</a></p>
<p>インストールしてプラグインを有効にするだけです。<br />
これをみるとつくづくMacOSX Serverを導入したいと思うわけです&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2008/06/19_00_145.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>メールサーバーの構築(3)</title>
		<link>http://blog.chibiegg.net/2008/03/31_17_135.htm</link>
		<comments>http://blog.chibiegg.net/2008/03/31_17_135.htm#comments</comments>
		<pubDate>Mon, 31 Mar 2008 08:37:37 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[サーバー]]></category>
		<category><![CDATA[メール]]></category>
		<category><![CDATA[Courier]]></category>
		<category><![CDATA[Postfix]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/2008/03/31_17_135.htm</guid>
		<description><![CDATA[なかなかバーチャルユーザーでのメールサーバーがうまくいかないので、まずはLinuxユーザーでのメール送受信をしてみました。(今回は成功しています。) 構成はPostfix(とりあえずSSLなしのSMTP) + SASL2 [...]]]></description>
			<content:encoded><![CDATA[<p>なかなかバーチャルユーザーでのメールサーバーがうまくいかないので、まずはLinuxユーザーでのメール送受信をしてみました。(今回は成功しています。)</p>
<p>構成はPostfix(とりあえずSSLなしのSMTP) + SASL2によるSMTP-Auth + OP25B対策のためISP(eo)のサーバーを経由 + Courier(IMAP,POP) よってMaildir形式です。いたって標準的な構成です。<br />
外部に解放するポートは<br />
送信に必須(25,587)<br />
WANからSSLなしでメールチェックをする場合に必要(110,143)<br />
WANからSSLありでメールチェックをする場合に必要(995,993)<br />
です。</p>
<p><span id="more-135"></span></p>
<p>必要なものをインストールします。</p>
<pre><code>$ su
# apt-get install postfix postfix-tls libsasl2 libsasl2-modules sasl2-bin courier-pop-ssl courier-imap-ssl</code></pre>
<p>courierではWebによる設定(courier-webadmin)について聞かれます。Webベースで設定できるのならそうしておきたいので私は「はい」を選択しておきましたがどちらでもかまいません。<br />
Postfixのインストール時にサーバーのタイプを聞かれますので「インターネットサイト」を選択してください。<br />
「メール名は？」と聞かれたら構築するメールサーバーの「＠」以降を入力してください。</p>
<p>では、Postfixの設定ファイルを編集します。<br />
ますは「/etc/postfix/main.cf」を。<br />
0.基本的な変更</p>
<pre><code>mydomain = hogehoge.com</code></pre>
<p>を追記。(これは適時書き換えてください)</p>
<pre><code>myorigin = mail.hogehoge.net
mydestination = $myhostname, localhost.$mydomain, localhost</code></pre>
<p>に変更<br />
1.Maildir形式にする。</p>
<pre><code>mailbox_command = procmail -a "$EXTENSION"</code></pre>
<p>を</p>
<pre><code><font color="#0000FF">#</font>mailbox_command = procmail -a "$EXTENSION"</code></pre>
<p>としてコメントアウト</p>
<pre><code>home_mailbox = Maildir/</code></pre>
<p>を追加<br />
2.SASL2によるSMTP-Authの有効</p>
<pre><code>smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_auth_destination,reject
smtpd_sasl_path = smtpd
broken_sasl_auth_clients = yes</code></pre>
<p>を追加<br />
3.OP25B対策のためISPのSMTPを経由するように変更</p>
<pre><code>relayhost = </code></pre>
<p>を</p>
<pre><code>relayhost = <font color="#0000FF">[smtpauth.eonet.ne.jp]:587</font></code></pre>
<p>に。これはISPのSMTP-Authサーバーのアドレスにしてください。</p>
<pre><code>smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/isp_auth
smtp_sasl_security_options = noanonymous</code></pre>
<p>を追加。</p>
<p>次に「/etc/postfix/master.cf」を編集<br />
「smtp      inet  n       &#8211;       &#8211;       &#8211;       &#8211;       smtpd」の下に</p>
<pre><code>  -o smtpd_sasl_auth_enable=yes</code></pre>
<p>を追加(最初のスペースは不可欠)</p>
<pre><code><font color="#0000FF">#</font>submission inet n       -       -       -       -       smtpd
<font color="#0000FF">#</font>  -o smtpd_sasl_auth_enable=yes
<font color="#0000FF">#</font>  -o smtpd_client_restrictions=permit_sasl_authenticated,reject</code></pre>
<p>を</p>
<pre><code>submission inet n       -       -       -       -       smtpd
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject</code></pre>
<p>に変更(コメント解除)し、その下に</p>
<pre><code>  -o smtpd_etrn_restrictions=reject</code></pre>
<p>を追加。</p>
<p>ISPのメールサーバーにログインするためのユーザー名とパスワードを登録します。<br />
「/etc/postfix/isp_auth」を作成し以下のように記述して保存します。</p>
<pre><code>[smtpauth.eonet.ne.jp]:587 ユーザー名:パスワード</code></pre>
<p>そしてDB化</p>
<pre><code># postmap /etc/postfix/isp_auth</code></pre>
<p>最後にSASLにSMTPのユーザー名とパスワードを登録します。</p>
<pre><code># saslpasswd2 -c -u `postconf -h myhostname` ユーザー名</code></pre>
<p>パスワードを二回聞かれるのでSMTP認証に使いたいパスワードを設定してください。<br />
初回時に以下のコマンドも実行してください。</p>
<pre><code># chgrp postfix /etc/sasldb2
# chmod g+r /etc/sasldb2
# ln /etc/sasldb2 /var/spool/postfix/etc</code></pre>
<p>ユーザーを削除するときは</p>
<pre><code># saslpasswd2 -c -u `postconf -h myhostname` ユーザー名</code></pre>
<p>これでLinuxユーザー名とパスワードでメール送受信ができるはずです。<br />
POPのパスワードはLinuxユーザーのパスワードを利用し,SMTPへはSASLで設定したパスワードを利用します。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2008/03/31_17_135.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AFP経由のrsync</title>
		<link>http://blog.chibiegg.net/2008/03/26_18_134.htm</link>
		<comments>http://blog.chibiegg.net/2008/03/26_18_134.htm#comments</comments>
		<pubDate>Wed, 26 Mar 2008 09:00:21 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[バックアップ]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[netatalk]]></category>
		<category><![CDATA[rsync]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/2008/03/26_18_134.htm</guid>
		<description><![CDATA[検証というほど大それたものではありませんが。 教えて頂いたCJKパッチを当てたnetatalkをインストール済みのDebianにLeopardからAFP経由でrsyncを使ってiTunesフォルダをバックアップしてみまし [...]]]></description>
			<content:encoded><![CDATA[<p>検証というほど大それたものではありませんが。<br />
教えて頂いたCJKパッチを当てたnetatalkをインストール済みのDebianにLeopardからAFP経由でrsyncを使ってiTunesフォルダをバックアップしてみました。</p>
<p>SSH経由でバックアップしたときはファイル名によってMac側から開けないファイルがあったのですが、そのような現象はありませんでした。</p>
<p>これで安心してiTunesのバックアップがとれます。<br />
CJKパッチやCoreFoundationによるdecompose/precomposeの変換についてもご丁寧に教えでくださったHATさんには自サイト上で申し訳ありませんが、お礼申し上げます。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2008/03/26_18_134.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>メールサーバーの構築(2)</title>
		<link>http://blog.chibiegg.net/2008/03/21_01_133.htm</link>
		<comments>http://blog.chibiegg.net/2008/03/21_01_133.htm#comments</comments>
		<pubDate>Thu, 20 Mar 2008 16:18:55 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[日記]]></category>
		<category><![CDATA[サーバー]]></category>
		<category><![CDATA[メール]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/2008/03/21_01_133.htm</guid>
		<description><![CDATA[すいません。以前書いたメールサーバーの設定ですが書くのを忘れていましたが殆ど自分のためのメモです。 なんかいろいろいじってたらうまくいってやり方は忘れてしまったということがよくあるので&#8230; 実のところ全然できて [...]]]></description>
			<content:encoded><![CDATA[<p>すいません。以前書いたメールサーバーの設定ですが書くのを忘れていましたが殆ど自分のためのメモです。<br />
なんかいろいろいじってたらうまくいってやり方は忘れてしまったということがよくあるので&#8230;</p>
<p>実のところ全然できていません。一時メールが受信できるようになったのに次の瞬間ユーザー名とパスワードが通らなかったり。SMTPは全然だめだし。OP25Bが施されているプロバイダ(K-OPTI.COM)なので25番ポートでの標準的な送信ができないし。</p>
<p>以前書いた諸事情で30日までには成功させないといけません。そのときにはちゃんとまとめる予定です。自分のためにも&#8230;</p>
<p>rsyncの件ですが近日中にパッチをあてたAFP経由でrsyncしてみます。なにせiTunesライブラリのバックアップで80G弱必要なところにiTunesバックアップ用に準備したハードディスクが80Gで。いったん全部消さないといけないなと思っています。一からした方が気分がいいので。<br />
HATさんにはいつもご丁寧に教えていただき大変勉強になっております。本当にありがとうございます。</p>
<p>今日21日は昼頃から学校で単位認定会議です。高三になれるかどうかが決まる日なのですが、大丈夫であることを祈ります。2回も入院したり退院後もときどき休んだりして出席日数が&#8230;.なので。欠課のところはどうなるのか&#8230;英語も&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2008/03/21_01_133.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>netatalkをCJKパッチ付きでインストール</title>
		<link>http://blog.chibiegg.net/2008/03/18_23_132.htm</link>
		<comments>http://blog.chibiegg.net/2008/03/18_23_132.htm#comments</comments>
		<pubDate>Tue, 18 Mar 2008 14:41:56 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Mac]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/2008/03/18_23_132.htm</guid>
		<description><![CDATA[HATさんに当サイトへトラックバックしていただいた「Netatalk 2.0.3 with SSL and CJK on Debian 4.0」を実践してみました。 理由はDebian上のファイルをAFP経由Macからで [...]]]></description>
			<content:encoded><![CDATA[<p>HATさんに当サイトへトラックバックしていただいた「Netatalk 2.0.3 with SSL and CJK on Debian 4.0」を実践してみました。<br />
理由はDebian上のファイルをAFP経由Macからでファイルの一覧は正常に取得できるのに特定のファイルが開こうとマウスで選択した瞬間Finderから消失するという現象があったので、CJKパッチを当てたら直るかなぁという希望があったのです。(同じファイルでもファイル名を変更すると正常にAFP経由でも開けるので。)</p>
<p><a href="http://www003.upp.so-net.ne.jp/hat/netatalk/debian40.html">こちら</a>のページでは大変丁寧に順番が記載されているので簡単にインストールすることができました。<br />
<code>
<pre>
<font color="#0000FF">~/</font>$ cd /tmp/
<font color="#0000FF">/tmp</font>$ mkdir netatalkbuild
<font color="#0000FF">/tmp</font>$ cd netatalkbuild/
<font color="#0000FF">/tmp/netatalkbuild</font>$ export LANG=ja_JP.UTF-8
<font color="#0000FF">/tmp/netatalkbuild</font>$ echo $LANG
ja_JP.UTF-8
<font color="#0000FF">/tmp/netatalkbuild</font>$ sudo apt-get install fakeroot
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
fakeroot はすでに最新バージョンです。
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 71 個。
<font color="#0000FF">/tmp/netatalkbuild</font>$ sudo apt-get install libssl-dev cracklib2-dev
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
libssl-dev はすでに最新バージョンです。
cracklib2-dev はすでに最新バージョンです。
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 71 個。
<font color="#0000FF">/tmp/netatalkbuild</font>$ apt-get source netatalk
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
1947kB のソースアーカイブを取得する必要があります。
取得:1 http://ftp.jp.debian.org etch/main netatalk 2.0.3-4 (dsc) [802B]
取得:2 http://ftp.jp.debian.org etch/main netatalk 2.0.3-4 (tar) [1921kB]
取得:3 http://ftp.jp.debian.org etch/main netatalk 2.0.3-4 (diff) [26.1kB]
1947kB を 1s で取得しました (1492kB/s)
gpg: Signature made 2006年01月14日 17時30分38秒 JST using DSA key ID 496A1827
gpg: Can't check signature: public key not found
dpkg-source: extracting netatalk in netatalk-2.0.3
dpkg-source: unpacking netatalk_2.0.3.orig.tar.gz
dpkg-source: applying ./netatalk_2.0.3-4.diff.gz
<font color="#0000FF">/tmp/netatalkbuild</font>$ sudo apt-get build-dep netatalk
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 71 個。
<font color="#0000FF">/tmp/netatalkbuild</font>$ wget http://www003.upp.so-net.ne.jp/hat/files/netatalk-2.0.3-cjk-4.patch.gz
--22:54:47--  http://www003.upp.so-net.ne.jp/hat/files/netatalk-2.0.3-cjk-4.patch.gz
           =&gt; `netatalk-2.0.3-cjk-4.patch.gz'
www003.upp.so-net.ne.jp をDNSに問いあわせています... 210.132.253.3
www003.upp.so-net.ne.jp|210.132.253.3|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 32,916 (32K) [text/plain]

100%[====================================&gt;] 32,916        --.--K/s             

22:54:47 (1.00 MB/s) - `netatalk-2.0.3-cjk-4.patch.gz' を保存しました [32916/32916]

<font color="#0000FF">/tmp/netatalkbuild</font>$ zcat netatalk-2.0.3-cjk-4.patch.gz &gt; netatalk-2.0.3/debian/patches/999-netatalk-2.0.3-cjk-4.diff
<font color="#0000FF">/tmp/netatalkbuild</font>$ DEB_BUILD_OPTIONS="ssl debuild"
<font color="#0000FF">/tmp/netatalkbuild</font>$ export DEB_BUILD_OPTIONS
ssl debuild
<font color="#0000FF">/tmp/netatalkbuild</font>$ cd netatalk-2.0.3
<font color="#0000FF">/tmp/netatalkbuild/netatalk-2.0.3</font>$ dpkg-buildpackage -rfakeroot

コンパイル中......

<font color="#0000FF">/tmp/netatalkbuild/netatalk-2.0.3</font>$ sudo dpkg -r netatalk
(データベースを読み込んでいます ... 現在 105050 個のファイルとディレクトリがインストールされています。)
netatalk を削除しています ...
Stopping AppleTalk Daemons: afpd papd timelord atalkd cnid_metad.
<font color="#0000FF">/tmp/netatalkbuild/netatalk-2.0.3</font>$ cd ../
<font color="#0000FF">/tmp/netatalkbuild</font>$ sudo dpkg -i netatalk_2.0.3-4_i386.deb
未選択パッケージ netatalk を選択しています。
(データベースを読み込んでいます ... 現在 104899 個のファイルとディレクトリがインストールされています。)
(netatalk_2.0.3-4_i386.deb から) netatalk を展開しています...
netatalk (2.0.3-4) を設定しています ...

設定ファイル `/etc/default/netatalk'
 ==&gt; これはインストールしてから (あなたかスクリプトによって) 変更されています。
 ==&gt; パッケージ配布元が更新版を提供しています。
   どうしますか? 以下の選択肢があります:
    Y か I  : パッケージメンテナのバージョンをインストールする
    N か O  : 現在インストールされている自分のバージョンを残す
      D     : 両バージョンの差異を表示する
      Z     : この処理をバックグラウンドにし、状況を確認する
 デフォルトでは現在使っている自分のバージョンを残します。
*** netatalk (Y/I/N/O/D/Z) [デフォルト=N] ? <font color="#ff0000">Y</font>
設定ファイル /etc/default/netatalk を新規にインストールしています ...
設定ファイル /etc/pam.d/netatalk を新規にインストールしています ...
Starting AppleTalk services (this will take a while):  atalkd papd afpd cnid_metad.
</pre>
<p></code></p>
<p>インストールは以上です。以下は設定ファイルの変更。</p>
<p>「/etc/default/netatalk」の</p>
<pre><core>export ATALK_MAC_CHARSET
export ATALK_UNIX_CHARSET</code></pre>
<p>を</p>
<pre><core>export ATALK_MAC_CHARSET<font color="#ff0000">='MAC_JAPANESE'</font>
export ATALK_UNIX_CHARSET<font color="#ff0000">='UTF8'</font></code></pre>
<p>に変更。(UTF8は付け加えました。)</p>
<p>「/etc/netatalk/afpd.conf」の最後の行に</p>
<pre><core>- -uamlist uams_dhx.so,uams_clrtxt.so -maccodepage MAC_JAPANESE</code></pre>
<p>を追記。</p>
<p>「/etc/netatalk/AppleVolumes.default」のコメント群の最後</p>
<pre><core># By default all users have access to their home directories.</code></pre>
<p>の下に</p>
<pre><core>:DEFAULT: options:upriv,usedots cnidscheme:dbd maccharset:MAC_JAPANESE</code></pre>
<p>を追加。</p>
<p>念のためavahi-daemonの確認。<br />
「/etc/avahi/services/afpd.service」を以下の内容で作成。</p>
<pre><core>&lt;?xml version="1.0" standalone='no'?&gt;
&lt;!DOCTYPE service-group SYSTEM "avahi-service.dtd"&gt;
&lt;service-group&gt;
        &lt;name replace-wildcards="yes"&gt;%h&lt;/name&gt;
        &lt;service&gt;
                &lt;type&gt;_afpovertcp._tcp&lt;/type&gt;
                &lt;port&gt;548&lt;/port&gt;
        &lt;/service&gt;
&lt;/service-group&gt;</code></pre>
<p>でavahi-daemonの再起動。</p>
<pre><core>$ sudo /etc/init.d/avahi-daemon restart</code></pre>
<p>さて、最後に緊張のCJKパッチの確認とSSLが有効になっているかの確認をコマンドを2つ実行して行います。<br />
赤字の部分が確認事項です。<br />
<font color="#0000FF">/tmp/netatalkbuild</font>$ /usr/sbin/afpd -V<br />
afpd 2.0.3<font color="#ff0000">+cjk4</font> &#8211; Apple Filing Protocol (AFP) daemon of Netatalk</p>
<p>This program is free software; you can redistribute it and/or modify it under<br />
the terms of the GNU General Public License as published by the Free Software<br />
Foundation; either version 2 of the License, or (at your option) any later<br />
version. Please see the file COPYING for further information and details.</p>
<p>afpd has been compiled with support for these features:</p>
<p>        AFP3.1 support:	Yes<br />
      Transport layers:	TCP/IP DDP<br />
         CNID backends:	cdb dbd last<br />
           SLP support:	<font color="#ff0000">Yes</font><br />
  TCP wrappers support:	Yes<br />
         Quota support:	Yes<br />
   Admin group support:	Yes<br />
    Valid shell checks:	Yes<br />
      cracklib support:	Yes<br />
        Dropbox kludge:	No<br />
  Force volume uid/gid:	No</p>
<p>             afpd.conf:	/etc/netatalk/afpd.conf<br />
   AppleVolumes.system:	/etc/netatalk/AppleVolumes.system<br />
  AppleVolumes.default:	/etc/netatalk/AppleVolumes.default<br />
       UAM search path:	/usr/lib/netatalk/</p>
<p><font color="#0000FF">/tmp/netatalkbuild</font>$ /usr/bin/asip-status.pl localhost<br />
AFP reply from localhost:548<br />
Flags: 1  Cmd: 3  ID: 57005<br />
Reply: DSIGetStatus<br />
Request ID: 57005<br />
Machine type: Netatalk<br />
AFP versions: AFPVersion 1.1,AFPVersion 2.0,AFPVersion 2.1,AFP2.2,AFPX03,AFP3.1<br />
UAMs: Cleartxt Passwrd,<font color="#ff0000">DHCAST128</font><br />
Flags: SupportsCopyFile,SupportsServerMessages,SupportsServerSignature,SupportsTCP/IP,SupportsSrvrNotifications,SupportsOpenDirectory,SupportsUTF8Servername,SupportsSuperClient<br />
Server name: Debian-Server<br />
Signature:<br />
** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** **  &#8230;&#8230;&#8230;&#8230;&#8230;.</p>
<p>Network address: ***.***.*.** (TCP/IP address)<br />
Network address: *****.*** (ddp address)<br />
UTF8 Servername: Debian-Server</p>
<p>これでOKです。Leopardからも接続確認できました。<br />
しかし、残念ながら最初に書いたような現象は改善されず。<br />
rsync経由でMacからSSHで送ったファイルの一部が駄目なようです。<br />
iTunesのバックアップをSSH経由でやっているのですが今度SSHではなくAFPでマウントして同期してみようと思います。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2008/03/18_23_132.htm/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>メールサーバーの構築(1)</title>
		<link>http://blog.chibiegg.net/2008/03/15_00_129.htm</link>
		<comments>http://blog.chibiegg.net/2008/03/15_00_129.htm#comments</comments>
		<pubDate>Fri, 14 Mar 2008 15:57:49 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/2008/03/15_00_129.htm</guid>
		<description><![CDATA[メールサーバーの構築をしてみようと思う。 きっかけは友達にメールサーバーの設置方法を教えてほしいと言われたからだ。(なんと単純な&#8230;) まずは実験ということでMac上のParallels DesktopにDeb [...]]]></description>
			<content:encoded><![CDATA[<p>メールサーバーの構築をしてみようと思う。<br />
きっかけは友達にメールサーバーの設置方法を教えてほしいと言われたからだ。(なんと単純な&#8230;)<br />
まずは実験ということでMac上のParallels DesktopにDebianをクリーンインストールし、一から設置しようと思う。(成功してません)</p>
<p>目標：Postfix + PostfixAdmin + MySQL + Courier-IMAP でOP25B対策付きのPOP/IMAP 仮想ユーザー環境</p>
<p>クリーンインストールからの実験なのでSQLのインストールも一からする。ということはApacheとかも&#8230;<br />
ということでめんどくさいのでセキュリティと保守性は無視していきます。</p>
<p>とりあえず本格的な設定に入るまで&#8230;(Courier-IMAPにはまだ手をつけてません)<br />
<span id="more-129"></span><br />
<strong>Apache2のインストール</strong></p>
<pre><code>$su
#apt-get install apache2
#apt-get install php5 php5-dev
#apt-get install libapache2-mod-php5</code></pre>
<p>そして「/etc/apache2/sites-available/default」を以下のように編集(セキュリティーは気にしていない)</p>
<pre><code>NameVirtualHost *
&lt;VirtualHost *&gt;
	ServerAdmin webmaster@localhost

	DocumentRoot /var/www/
	&lt;Directory /&gt;
		Options FollowSymLinks
		AllowOverride All
	&lt;/Directory&gt;
	&lt;Directory /var/www/&gt;
		Options Indexes FollowSymLinks MultiViews
		AllowOverride All
		Order allow,deny
		allow from all
		# This directive allows us to have apache2's default start page
                # in /apache2-default/, but still have / go to the right place
	&lt;/Directory&gt;

	ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
	&lt;Directory "/usr/lib/cgi-bin"&gt;
		AllowOverride None
		Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
		Order allow,deny
		Allow from all
	&lt;/Directory&gt;

	ErrorLog /var/log/apache2/error.log

	# Possible values include: debug, info, notice, warn, error, crit,
	# alert, emerg.
	LogLevel warn

	CustomLog /var/log/apache2/access.log combined
	ServerSignature On

&lt;/VirtualHost&gt;</code></pre>
<p>で、Apache2の再起動。</p>
<pre><code>#/etc/init.d/apache2 restart</code></pre>
<p><strong>MySQLのインストール</strong></p>
<pre><code>#apt-get install mysql-server-5.0
#apt-get install mysql-client
#apt-get install mysql-common
#apt-get install php5-mysql</code></pre>
<p>ここでMySQLのユーザーの設定をする。<br />
やることはrootのパスワードを設定する。</p>
<pre><code>#mysqladmin -u root password '設定したいパスワード'
#mysql -u root -p</code></pre>
<p>として、MySQLにログインし、以下のように作業をする。</p>
<pre><code>Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 5.0.32-Debian_7etch5-log Debian etch distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> select host,user,password from mysql.user;      //ユーザーの確認
+-------------+------------------+-------------------------------------------+
| host        | user             | password                                  |
+-------------+------------------+-------------------------------------------+
| localhost   | root             | *9CFBBC772F3F6C106020035386DA5BBBF1249A11 |
| test-debian | root             |                                           |
| localhost   | debian-sys-maint | *C23DC1F950ACBE84A7EAD04697082E8FEC3D7403 |
+-------------+------------------+-------------------------------------------+
3 rows in set (0.00 sec)

mysql> delete from mysql.user where user="debian-sys-maint";     //不要なユーザーの削除
Query OK, 1 row affected (0.00 sec)

mysql> set password for root@'test-debian'=password('設定したいパスワード');      //test-debianドメインのrootのパスワード設定
Query OK, 0 rows affected (0.00 sec)

mysql> select host,user,password from mysql.user;      //ユーザーの確認
+-------------+------+-------------------------------------------+
| host        | user | password                                  |
+-------------+------+-------------------------------------------+
| localhost   | root | *9CFBBC772F3F6C106020035386DA5BBBF1249A11 |
| test-debian | root | *9CFBBC772F3F6C106020035386DA5BBBF1249A11 |
+-------------+------+-------------------------------------------+
2 rows in set (0.00 sec)

mysql> exit      //ログアウト
Bye</code></pre>
<p>以前の記事を参考にphpMyAdminを入れると便利。</p>
<p><strong>Postfixのインストール</strong></p>
<pre><code>#apt-get install postfix postfix-mysql postfix-tls</code></pre>
<p>インストール時に設定を求められます。<br />
<a href="http://blog.chibiegg.net/wp-content/uploads/2008/03/postfix-2.jpg"><img src='http://blog.chibiegg.net/wp-content/uploads/2008/03/postfix-2.thumbnail.jpg' title='postfix-2.jpg' alt='postfix-2.jpg' /></a><br />
「了解」を選択し、<br />
「インターネットサイト」を選択し、<br />
「chibiegg.net」に設定しました。</p>
<p><strong>PostfixAdminのインストール</strong></p>
<pre><code>#cd /usr/src</code></pre>
<p>「http://www.high5.net/postfixadmin/」から最新版をダウンロード</p>
<pre><code>#wget http://jaist.dl.sourceforge.net/sourceforge/postfixadmin/postfixadmin-2.2.0-rc3.tar.gz
#tar -zxvf postfixadmin-2.2.0-rc3.tar.gz
#mv ./postfixadmin-2.2.0-rc3 /var/www/postfixadmin
#cd /var/www/postfixadmin
#mysql -uroot -pパスワード < DATABASE_MYSQL.TXT</code></pre>
<p>ここで「http://サーバーのIPアドレス/postfixadmin/setup.php」に接続すると以下のようなページが見れればOK。<br />
まだMySQLに接続できないなどエラーがありますが、postfix用のユーザーの設定をすれば行けるでしょう。<br />
<a href="http://blog.chibiegg.net/wp-content/uploads/2008/03/postfixadmin-setuperr.jpg"><img src='http://blog.chibiegg.net/wp-content/uploads/2008/03/postfixadmin-setuperr.thumbnail.jpg' title='postfixadmin-setuperr.jpg' alt='postfixadmin-setuperr.jpg' /></a></p>
<p>まだまだ続きます。続きは明日。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2008/03/15_00_129.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iTunes用のサーバー設定 第一弾(AFPで)</title>
		<link>http://blog.chibiegg.net/2008/01/05_13_126.htm</link>
		<comments>http://blog.chibiegg.net/2008/01/05_13_126.htm#comments</comments>
		<pubDate>Sat, 05 Jan 2008 04:33:13 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Mac]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/2008/01/05_13_126.htm</guid>
		<description><![CDATA[もともとMacBook Proの方にはハードディスクの都合でiTunesのライブラリは入っていないのですが、自宅でLAN経由でいいのでMacBook Proでもデスクトップに入っているiTunesライブラリを聴きたいとい [...]]]></description>
			<content:encoded><![CDATA[<p>もともとMacBook Proの方にはハードディスクの都合でiTunesのライブラリは入っていないのですが、自宅でLAN経由でいいのでMacBook Proでもデスクトップに入っているiTunesライブラリを聴きたいということで設定してみます。<br />
で、メインのMacはサーバーではないので時々電源が切ってあったりするので、そこからバックアップ先となっているサーバー機からライブラリを読むことにします。</p>
<p>考えた方法は２つありました。<br />
一つは簡単にAFPでiTunesフォルダを共有しノートの「~/Music」フォルダに「iTunes」フォルダのシンボリックリンクを作成する。<br />
もう一つはDAAPサーバーを立ててノートから共有に接続する方法です。<br />
ただしこちらの方法はアルバムアートワークも表示されませんし歌詞も共有されませんし、ビデオは共有の対象外です。</p>
<p>で、まずは「AFP」での共有から。(実行は自己責任で。データの破損などいかなる損害も補償しかねます。)<br />
こちらの方法の欠点は起動時に手動でマウントする必要があることです。<br />
それと、曲のタイトルなどの変更はしないように注意すること。<br />
これは以前の「<a href="http://blog.chibiegg.net/2007/11/11_01_8.htm">netatalk OpenSSL(LeopardでAFP)設定編</a>」の時と同じように新しく共有ポイントを設定します。<br />
このときに<del datetime="2008-04-20T14:12:03+00:00">読み込みのみを許可するようにします</del>。（「iTunes」フォルダ直下のファイル群は書き込み権限がないと起動できませんでした。すいません。訂正させていただきます。）<br />
「/etc/netatalk/AppleVolumes.default」に<br />
<code>
<pre>/mnt/music "Music" allow:hogehoge</pre>
<p></code><br />
を追加します。(これは例です。/mnt/musicフォルダを共有します。)</p>
<p>でnetatalkを再起動。<br />
ここからはMacの「ターミナル」で操作をします。Musicフォルダはマウントしてあるとします。<br />
iTunesは使用していないことを前提とします(iTunesフォルダを削除するため)。<br />
iTunesに曲が入っている場合は移動しておきます。移動方法は割愛します。<br />
<code>
<pre>$ rm -r ~/Music/iTunes                //既存のiTunesフォルダを削除します。
$ ln -s /Volumes/Music/iTunes ~/Music/</pre>
<p></code></p>
<p>以上。あとはiTunesを起動するだけ。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2008/01/05_13_126.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>rsyncによるバックアップ</title>
		<link>http://blog.chibiegg.net/2007/12/30_14_125.htm</link>
		<comments>http://blog.chibiegg.net/2007/12/30_14_125.htm#comments</comments>
		<pubDate>Sun, 30 Dec 2007 05:33:35 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/2007/12/30_14_125.htm</guid>
		<description><![CDATA[まずはインストールします。 $ su # apt-get install rsync 設定などは特にありません。コマンドラインの引数のみです。 例えば、「/home/hogehoge」フォルダを「/mnt/backupd [...]]]></description>
			<content:encoded><![CDATA[<p>まずはインストールします。</p>
<pre><code>
$ su
# apt-get install rsync
</code></pre>
<p>設定などは特にありません。コマンドラインの引数のみです。</p>
<p>例えば、「/home/hogehoge」フォルダを「/mnt/backupdisk」に同期コピーする場合は、</p>
<pre><code># rsync -av --delete /home/hogehoge /mnt/backupdisk</code></pre>
<p>とするだけです。<br />
「-a」と「&#8211;delete」オプションをつけることでフォルダ構造を同じにすることができます。<br />
つまり、元フォルダで削除されたものはコピー先でも削除され、追加されたファイルだけコピー先にコピーされます。「-v」は実行中のファイルを表示するオプションです。</p>
<p>「cron」で自動的にやってもいいのですが、ファイルを更新したときに実行するスクリプトを作成して手動でスクリプトを実行することにします。(経過を確認しないと個人的に心配なので&#8230;)</p>
<p>backup</p>
<pre><code>
#!/bin/sh
year=`date +%Y`
month=`date +%m`
day=`date +%d`
time=`date +%T`
echo "Backup($year/$month/$day $time)"
rsync -av --delete /home/hogehoge /mnt/backupdisk
</code></pre>
<p>今回参考にさせていただいたサイトは「<a href="http://www.jitaku-server.net/backup_rsync.html">rsyncで自動バックアップ</a>」です。<br />
こちらにはオプションについて詳しく書かれているので参照してください。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/12/30_14_125.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debianにハードディスクを増設</title>
		<link>http://blog.chibiegg.net/2007/12/29_17_124.htm</link>
		<comments>http://blog.chibiegg.net/2007/12/29_17_124.htm#comments</comments>
		<pubDate>Sat, 29 Dec 2007 08:24:14 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>

		<guid isPermaLink="false">http://blog.chibiegg.net/2007/12/29_17_124.htm</guid>
		<description><![CDATA[ついにサーバーに160GBのハードディスクを追加しました。 物理的には単純にIDEのプライマリーのスレーブに接続しただけです。 以下はフォーマットとマウントについてメモします。 まずは接続されているか「dmesg」で確認 [...]]]></description>
			<content:encoded><![CDATA[<p>ついにサーバーに160GBのハードディスクを追加しました。</p>
<p>物理的には単純にIDEのプライマリーのスレーブに接続しただけです。<br />
以下はフォーマットとマウントについてメモします。</p>
<p>まずは接続されているか「dmesg」で確認します。</p>
<blockquote><p>
hdb: Maxtor 6Y160P0, ATA DISK drive</p></blockquote>
<p>とあればOK。たまたま元々つけていたHDDと同じ型番でした。もちろん型番などは違う場合もありますが。<br />
IDE 0:0ならhda<br />
IDE 0:1ならhdb<br />
IDE 1:0ならhdc<br />
IDE 1:1ならhdd<br />
です。<br />
<span id="more-124"></span><br />
まずは「fdisk」でパーティションの確認。</p>
<pre><code>
$ su
# fdisk /dev/hdb

The number of cylinders for this disk is set to 19929.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): p　//「p」で現在の設定の確認。
Disk /dev/hdb: 163.9 GB, 163928604672 bytes
255 heads, 63 sectors/track, 19929 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hdb1               1       19930   160086496+   b  W95 FAT32
</code></pre>
<p>すでにパーティションはあるのでそのまま使用する。「t」でシステムタイプをext3のために83にする。</p>
<pre><code>
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 83
Changed system type of partition 1 to 83 (Linux)
</code></pre>
<p>「w」で保存して終了。</p>
<pre><code>
Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.
</code></pre>
<p>でext3でフォーマット。</p>
<pre><code>
# mkfs -j /dev/hdb1
mke2fs 1.40-WIP (14-Nov-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
20021248 inodes, 40021624 blocks
2001081 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
1222 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
     32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
     4096000, 7962624, 11239424, 20480000, 23887872

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 33 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
</code></pre>
<p>「fstab」にオートマウントするように書き込む。<br />
今回は「backupdisk」というラベルをパーティションに設定し、「/mnt/backupdisk」にマウントするように設定する。<br />
まずはラベルの指定。</p>
<pre><code>
# e2label /dev/hdb1 backupdisk
# e2label /dev/hdb1　//設定の確認
backupdisk
</code></pre>
<p>マウントポイントの作成。</p>
<pre><code>
# mkdir /mnt/backupdata
</code></pre>
<p>「/etc/fstab」をエディタで開き以下の行を追記。</p>
<pre><code>LABEL=backupdisk        /mnt/backupdisk ext3    defaults        0       0</code></pre>
<p>再起動したら自動マウントされました〜。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/12/29_17_124.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>eAcceleratorの導入</title>
		<link>http://blog.chibiegg.net/2007/11/24_19_86.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/24_19_86.htm#comments</comments>
		<pubDate>Sat, 24 Nov 2007 10:52:12 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Webサーバー]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/24_19_86.htm</guid>
		<description><![CDATA[複数あるPHPのアクセラレータの一つである「eAccelerator」を導入してみました。 前回にPHPを5にバージョンアップしたのでPHP5にインストールすることになりますがPHP4でもあまり相違点はないと思われます。 [...]]]></description>
			<content:encoded><![CDATA[<p>複数あるPHPのアクセラレータの一つである「<a href="http://eaccelerator.net/">eAccelerator</a>」を導入してみました。</p>
<p>前回にPHPを5にバージョンアップしたのでPHP5にインストールすることになりますがPHP4でもあまり相違点はないと思われます。</p>
<p>コンパイル環境がない場合はまずそれらをインストール</p>
<pre><code>
$sudo aptitude install libtool
$sudo aptitude install libguile-dev
$sudo aptitude install automake
$sudo aptitude install g++
</code></pre>
<p>まずは「eAccelerator」のソースのダウンロードからインストールまで、</p>
<pre><code>
$ cd /tmp
$ wget http://nchc.dl.sourceforge.net/sourceforge/eaccelerator/eaccelerator-0.9.5.2.tar.bz2
$ tar jxf eaccelerator-0.9.5.2.tar.bz2
$ su
# cd eaccelerator-0.9.5.2
# export PHP_PREFIX="/usr/"
# $PHP_PREFIX/bin/phpize
# ./configure --enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-config
# make
# make install
</code></pre>
<p>とすると<br />
<span id="more-86"></span></p>
<blockquote><p>
Installing shared extensions:     /usr/lib/php5/20060613+lfs/</p></blockquote>
<p>のようにインストール先が出力されます。<br />
次にキャッシュフォルダーの作成と「extensions」フォルダー、リンクの作成を行います。</p>
<pre><code>
# mkdir /usr/lib/php5/extensions
# mkdir /var/cache/eaccelerator
# chown www-data:www-data /var/cache/eaccelerator
# ln -s /usr/lib/php5/20060613+lfs/eaccelerator.so /usr/lib/php5/extensions/eaccelerator.so
</code></pre>
<p>次にPHPの設定を変更します。</p>
<pre><code>
# vim /etc/php5/apache2/php.ini
</code></pre>
<p>としエディタで「/etc/php5/apache2/php.ini」を開き、以下の記述を最後の行の「; End:」の上に追記します。</p>
<pre><code>
[eaccelerator]
zend_extension="/usr/lib/php5/extensions/eaccelerator.so"
eaccelerator.shm_size = "32"
eaccelerator.cache_dir = "/var/cache/eaccelerator"
eaccelerator.enable = "1"
eaccelerator.optimizer = "1"
eaccelerator.check_mtime = "1"
eaccelerator.debug = "0"
eaccelerator.filter = ""
eaccelerator.shm_max = "0"
eaccelerator.shm_ttl = "0"
eaccelerator.shm_prune_period = "0"
eaccelerator.shm_only = "0"
eaccelerator.compress = "1"
eaccelerator.compress_level = "9"
eaccelerator.keys = "shm_and_disk"
eaccelerator.sessions = "shm_and_disk"
eaccelerator.content = "shm_and_disk"
</code></pre>
<p>保存し、最後にApache2を再起動します。</p>
<pre><code>
# /etc/init.d/apache2 restart
</code></pre>
<p>以前PHPの確認で使用したphpinfo();を実行してみます。(<a href="http://chibiegg.homeip.net/2007/11/11_00_6.htm">こちらを参照</a>)<br />
<a href="http://chibiegg.homeip.net/wp-content/uploads/2007/11/eaccelerator_phpinfo.jpg"><img src='http://chibiegg.homeip.net/wp-content/uploads/2007/11/eaccelerator_phpinfo.thumbnail.jpg' title='eaccelerator_phpinfo' alt='eaccelerator_phpinfo' /></a><br />
の様に「eAccelerator」の項目ができており、キャッシュフォルダーである「/var/cache/eaccelerator」にファイルが生成されてるのを確認できれば成功。</p>
<p>キャッシュフォルダの確認方法</p>
<pre><code>
# ls /var/cache/eaccelerator
0  1  2  3  4  5  6  7 8  9  a  b  c  d  e  f　//このようなファイルができていれば成功
</code></pre>
<p>WordPressなども少し速くなったような気がします。<br />
細かい比較はまた今度。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/24_19_86.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP5にPEARをインストール？</title>
		<link>http://blog.chibiegg.net/2007/11/23_22_85.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/23_22_85.htm#comments</comments>
		<pubDate>Fri, 23 Nov 2007 13:41:37 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/23_22_85.htm</guid>
		<description><![CDATA[先ほどphp5-pearが入らないと書きましたがインストールする方法を投稿しておられる方がおられましたのでやってみました。(2007年11月23日現在の結果：失敗) 「PHP5.1-pearを入れる」 $ su # vi [...]]]></description>
			<content:encoded><![CDATA[<p>先ほどphp5-pearが入らないと書きましたがインストールする方法を投稿しておられる方がおられましたのでやってみました。(2007年11月23日現在の結果：失敗)<br />
「<a href="http://d.hatena.ne.jp/toyoshi/20061031/1162891700">PHP5.1-pearを入れる</a>」</p>
<pre><code>
$ su
# vim /etc/apt/sources.list
</code></pre>
<p>として「/etc/apt/sources.list」に以下の記述を追加します。</p>
<pre><code>
deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable all
</code></pre>
<pre><code>
# apt-get update
# apt-get install php5-pear
</code></pre>
<p>あれ？<br />
<span id="more-85"></span></p>
<blockquote><p>パッケージリストを読み込んでいます&#8230; 完了<br />
依存関係ツリーを作成しています&#8230; 完了<br />
パッケージ php5-pear はデータベースには存在しますが、利用できません。<br />
おそらく、そのパッケージが見つからないか、もう古くなっているか、<br />
あるいは別のソースからのみしか利用できないという状況が考えられます<br />
E: パッケージ php5-pear にはインストール候補がありません</p></blockquote>
<p>php-pearもやってみました。</p>
<pre><code>
# aptitude install php-pear
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
拡張状態情報を読み込んでいます
パッケージの状態を初期化しています... 完了
タスクの記述を読み込んでいます... 完了
タグのデータベースを構築しています... 完了
以下のパッケージは依存関係が壊れています:
  libapache2-mod-php5 php5-cli php5-gd php5-mysql
以下のパッケージが一時固定されています:
  libmysqlclient15off mysql-client-5.0 mysql-common mysql-server mysql-server-5.0 php4-common php4-dev php4-pear php5 php5-dev
以下のパッケージが更新されます:
  php-pear php5-common
更新: 2 個、新規インストール: 0 個、削除: 0 個、保留: 14 個。
566kB のアーカイブを取得する必要があります。展開後に 549kB のディスク領域が新たに消費されます。
以下のパッケージには満たされていない依存関係があります:
  php5-gd: 依存: php5-common (= 5.2.0-8+etch7) しかし 5.2.5-0.dotdeb.1 はインストール予定です。
  php5-mysql: 依存: php5-common (= 5.2.0-8+etch7) しかし 5.2.5-0.dotdeb.1 はインストール予定です。
  php5-cli: 依存: php5-common (= 5.2.0-8+etch7) しかし 5.2.5-0.dotdeb.1 はインストール予定です。
  libapache2-mod-php5: 依存: php5-common (= 5.2.0-8+etch7) しかし 5.2.5-0.dotdeb.1 はインストール予定です。
Resolving dependencies...
以下のアクションでこれらの依存関係の問題は解決されます:

以下のパッケージを更新します:
libapache2-mod-php5 [5.2.0-8+etch7 (stable, now) -> 5.2.5-0.dotdeb.1 (<NULL>)]
php5-cli [5.2.0-8+etch7 (stable, now) -> 5.2.5-0.dotdeb.1 (<NULL>)]
php5-gd [5.2.0-8+etch7 (stable, now) -> 5.2.5-0.dotdeb.1 (<NULL>)]
php5-mysql [5.2.0-8+etch7 (stable, now) -> 5.2.5-0.dotdeb.1 (<NULL>)]

スコアは -150 です

この解決方法を受け入れますか? [Y/n/q/?]
</code></pre>
<p>moguraも動いているのでこれはやめておきます。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/23_22_85.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP5にバージョンアップ</title>
		<link>http://blog.chibiegg.net/2007/11/23_22_84.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/23_22_84.htm#comments</comments>
		<pubDate>Fri, 23 Nov 2007 13:06:22 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Webサーバー]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/23_22_84.htm</guid>
		<description><![CDATA[前回PHP5にアップデートしたいと書きましたが成功したのでメモをしておきます。 まず、PHP4現在何を使っているかをリストアップします。 $ su # dpkg -l インストールされていたのは以下のものでした。 ii  [...]]]></description>
			<content:encoded><![CDATA[<p>前回PHP5にアップデートしたいと書きましたが成功したのでメモをしておきます。</p>
<p>まず、PHP4現在何を使っているかをリストアップします。</p>
<pre><code>
$ su
# dpkg -l
</code></pre>
<p>インストールされていたのは以下のものでした。</p>
<blockquote><p>ii  php4           4.4.4-8+etch4<br />
ii  php4-common    4.4.4-8+etch4<br />
ii  php4-dev       4.4.4-8+etch4<br />
ii  php4-gd        4.4.4-8+etch4<br />
ii  php4-mysql     4.4.4-8+etch4<br />
ii  php4-pear      4.4.4-8+etch4<br />
ii  php5-cli       5.2.0-8+etch7<br />
ii  php5-common    5.2.0-8+etch7<br />
ii  libapache2-mod-php4 4.4.4-8+etch4</p></blockquote>
<p>次にPHPを使用しているページです<br />
言うまでもなく「WordPress ME2.2.3」<br />
「phpMyAdmin」<br />
友達に貸している「XOOPS 2.0.16a JP」<br />
アクセス解析「mogura」<br />
です。どれもPHP5で利用できそうです。「XOOPS 2.0.16a JP」は少し不安でしたが&#8230;</p>
<p>とりあえず「php5」をインストールします。</p>
<pre><code>
# apt-get install php5
</code></pre>
<p>すると<br />
<span id="more-84"></span></p>
<blockquote><p>パッケージリストを読み込んでいます&#8230; 完了<br />
依存関係ツリーを作成しています&#8230; 完了<br />
以下の特別パッケージがインストールされます:<br />
  libapache2-mod-php5<br />
以下のパッケージは「削除」されます:<br />
  libapache2-mod-php4 php4 php4-gd php4-mysql phpmyadmin<br />
以下のパッケージが新たにインストールされます:<br />
  libapache2-mod-php5 php5<br />
アップグレード: 0 個、新規インストール: 2 個、削除: 5 個、保留: 0 個。<br />
2414kB のアーカイブを取得する必要があります。<br />
展開後に 12.0MB のディスク容量が解放されます。<br />
続行しますか [Y/n]?</p></blockquote>
<p>と聞かれるので「Y」。「phpmyadmin」はインストールし直しみたいです。<br />
「libapache2-mod-php5」は勝手にインストール。<br />
そしてphp4の時に使っていたモジュールのインストール。</p>
<pre><code>
# apt-get install php5-dev
# apt-get install php5-gd
# apt-get install php5-mysql
# apt-get install php5-pear
# apt-get install phpmyadmin
</code></pre>
<p>ところが「PEAR」が</p>
<blockquote><p>パッケージリストを読み込んでいます&#8230; 完了<br />
依存関係ツリーを作成しています&#8230; 完了<br />
パッケージ php5-pear はデータベースには存在しますが、利用できません。<br />
おそらく、そのパッケージが見つからないか、もう古くなっているか、<br />
あるいは別のソースからのみしか利用できないという状況が考えられます<br />
E: パッケージ php5-pear にはインストール候補がありません</p></blockquote>
<p>と出てインストールできません。<br />
このパッケージを利用しているのは「mogura」です。<br />
調べてみると<br />
<a href="http://pear.php.net/package/PEAR">http://pear.php.net/package/PEAR</a><br />
からダウンロードしてきて「mogura」のフォルダーに丸ごと入れておけばいいらしいのでそうします。<br />
<a href="http://pear.php.net/package/PEAR">http://pear.php.net/package/PEAR</a>に行ってファイルのパスを調べると</p>
<p>http://download.pear.php.net/package/PEAR-1.6.2.tgz</p>
<p>でした。<br />
ということで、</p>
<pre><code>
# cd /home/www/chibiegg/mogura
# wget http://download.pear.php.net/package/PEAR-1.6.2.tgz
# tar -zxvf PEAR-1.6.2.tgz
# mv ./PEAR-1.6.2/* ./
# rm -R PEAR-1.6.2/
# rm PEAR-1.6.2.tgz
</code></pre>
<p>最後にApache2を再起動</p>
<pre><code>
# /etc/init.d/apache2 restart
</code></pre>
<p>最後にページの動作確認をします。<br />
「WordPress ME2.2.3」<br />
「phpMyAdmin」<br />
「XOOPS 2.0.16a JP」<br />
「mogura」<br />
どれも設定を全くいじることなく動作しました。<br />
「WordPress」に関してはプラグインも確認しました。<br />
「Akismet」関係する設定ページなどを開きエラーのでないことを確認<br />
「Cimy Swift SMTP」メール送信テスト<br />
「Dunstan-style Error Page」存在しないページを指定し表示されるか確認<br />
「Mobile Eye+」携帯から接続確認<br />
「Search Hilite」何か検索してみる<br />
「Smart Update Pinger」この記事の投稿のときに確認<br />
すべてOKでした。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/23_22_84.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MediaWikiとPHP4とPHP5</title>
		<link>http://blog.chibiegg.net/2007/11/23_01_83.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/23_01_83.htm#comments</comments>
		<pubDate>Thu, 22 Nov 2007 16:02:46 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Webサーバー]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/23_01_83.htm</guid>
		<description><![CDATA[Wikipediaの為に作成されたMediaWikiを試してみようと思ったが、PHP4には対応していないそうだ。 一度サーバーのバックアップを取ってPHP5にバージョンアップができるか試してみようと思う。 ちょっと今日は [...]]]></description>
			<content:encoded><![CDATA[<p>Wikipediaの為に作成されたMediaWikiを試してみようと思ったが、PHP4には対応していないそうだ。<br />
一度サーバーのバックアップを取ってPHP5にバージョンアップができるか試してみようと思う。</p>
<p>ちょっと今日は学校で会議があったりして帰るのが遅かった。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/23_01_83.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AFPサーバーをLeopardのサイドバーに表示させる</title>
		<link>http://blog.chibiegg.net/2007/11/21_00_80.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/21_00_80.htm#comments</comments>
		<pubDate>Tue, 20 Nov 2007 15:42:20 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Mac]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/21_00_80.htm</guid>
		<description><![CDATA[せっかくnetatalkをLeopardと接続できるようにしたのに、わざわざ移動メニューの「サーバーへ接続」からアドレスを入力して接続していました。 そこでせっかくLeopardにある便利なサイドバーに表示させようという [...]]]></description>
			<content:encoded><![CDATA[<p>せっかくnetatalkをLeopardと接続できるようにしたのに、わざわざ移動メニューの「サーバーへ接続」からアドレスを入力して接続していました。<br />
そこでせっかくLeopardにある便利なサイドバーに表示させようということです。</p>
<p><img src="http://blog.chibiegg.net/wp-content/uploads/2007/11/sidebar-afp.jpg" alt="sidebar-afp.jpg" /><br />
(SambaとAFPと両方表示されています。アイコンがCRTとCinema Display。なんと言う格差&#8230;)<br />
そういえばアイコンがノートやデスクトップで違う<br />
<span id="more-80"></span></p>
<p>最初に試したのは昨日Appleのサイトから「Bonjour」のソースファイルをダウンロードしてきてコンパイルすることですがコンパイルに失敗しあきらめていました。<br />
が<a href="http://d.hatena.ne.jp/nyaxt/20071113">ここ</a>を参考に、「avahi-daemon」を使えばZero Configurationがつかえるそうです。</p>
<p>ついでにこんな設定をした方が良いそうだ。</p>
<blockquote><p>atalkd他レガシー関連daemon＆papdを起動しないように<br />
/etc/default/nettalkを編集：<br />
ATALKD_RUN=no<br />
PAPD_RUN=no</p></blockquote>
<p>それでは本題。「avahi-daemon」のインストール</p>
<pre><code>
$ sudo apt-get install avahi-daemon
</code></pre>
<p>「/etc/nsswitch.conf」の「hosts」に「mdns4」を追加するらしいが、すでに</p>
<pre><code>
hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4
</code></pre>
<p>と書かれていたので編集しなかった。</p>
<pre><code>
$ vi /etc/avahi/services/afpd.service
</code></pre>
<p>として新しく「afpd.service」ファイルを作り以下のように記述します。<br />
「Server-Name-AFP」は自由にサイドバーに表示させたい名前に変更してください。</p>
<pre><code>
&lt;?xml version="1.0" standalone='no'?&gt;&lt;!--*-nxml-*--&gt;
&lt;!DOCTYPE service-group SYSTEM "avahi-service.dtd"&gt;

&lt;service-group&gt;

&lt;name&gt;Server-Name-AFP&lt;/name&gt;

&lt;service&gt;
&lt;type&gt;_afpovertcp._tcp&lt;/type&gt;
&lt;port&gt;548&lt;/port&gt;
&lt;/service&gt;

&lt;/service-group&gt;
</code></pre>
<p>そして「netatalk」と「avahi-daemon」を再起動。</p>
<pre><code>
$ sudo /etc/init.d/netatalk restart
$ sudo /etc/init.d/avahi-daemon restart
</code></pre>
<p>しかしなぜか家ではこれでは読み込まれなかった。<br />
ので、こんな遠回りなことをやって再起動までした。<br />
本当は再起動する前にLeopardのサイドバーに表示されていたのだが再起動後もいけるかの確認も兼ねて。</p>
<pre><code>
$ sudo /etc/init.d/avahi-daemon stop
$ sudo avahi-daemon --debug
$ sudo shutdown -r now
</code></pre>
<p>これでサーバーを起動したときにLeopardのサイドバーに表示されるようになりました。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/21_00_80.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPressのパーマリンクの設定</title>
		<link>http://blog.chibiegg.net/2007/11/20_23_79.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/20_23_79.htm#comments</comments>
		<pubDate>Tue, 20 Nov 2007 14:27:12 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/20_23_79.htm</guid>
		<description><![CDATA[パーマリンクの設定をこちらに書くのを忘れてました。 ということで書いておきます。 WordPressは標準で記事のアドレスが 「http://chibiegg.homeip.net/wordpress/?p=3」 のよう [...]]]></description>
			<content:encoded><![CDATA[<p>パーマリンクの設定をこちらに書くのを忘れてました。<br />
ということで書いておきます。</p>
<p>WordPressは標準で記事のアドレスが<br />
「http://chibiegg.homeip.net/wordpress/?p=3」<br />
のように番号だけになっています。これを<br />
「http://chibiegg.homeip.net/wordpress/2007/11/10_213.htm」<br />
のようにしたいと思います。これによって各記事が別のファイルと検索エンジンに認識され検索の対象になりやすくなります。</p>
<p>まず、wordpressのあるフォルダのパーミッションを777にします。<br />
<span id="more-79"></span><br />
今回は「/home/www/chibiegg」がドキュメントルートで「/home/www/chibiegg/wordpress」にWordPressがあるとします。</p>
<pre><code>
$ su
# chmod 777 /home/www/chibiegg/wordpress/
</code></pre>
<p>次にWordPressの管理画面の「オプション」の「パーマリンク設定」を開きます。<br />
ここで好きなようにファイル名を変更することができます。<br />
既に選択肢にあるものを利用してもいいですし、「独自表記を以下の入力欄に記述」を使用して自由に決めることもできます。ここを<br />
「/%year%/%monthnum%/%day%_%hour%_%post_id%.htm」<br />
のようにすると<br />
「/年(4桁)/月(2桁)/日付_時間_記事のID.html」となります。<br />
ここには必ず「%post_id%」を含むようにします。<br />
その他使用できるタグは</p>
<p>http://codex.xwd.jp/index.php/Using_Permalinks</p>
<p>を参照してください。</p>
<p>そして、「パーマリンク構造を更新」をクリックします。<br />
上の方に「パーマリンク構造が更新されました。」が表示されればOK</p>
<p>しかしこれだけでは有効にならないためApache2の設定を変更します。<br />
パーマリンクはApache2の拡張機能である「rewrite_module」と設定を追加する「.htaccess」を使用しているためこれを有効にします。<br />
まずはrewrite_moduleを有効にします。</p>
<pre><code>
# a2enmod rewrite
# /etc/init.d/apache2 force-reload
</code></pre>
<p>次に「/etc/apache2/sites-available」内のサイトの設定を編集し「.htaccess」を有効にします。<br />
編集するファイルは各自の状況にあわせてください。今回は「chibiegg-homeip」という設定ファイルを使用しているとします。</p>
<pre><code>
# vi /etc/apache2/sites-available/chibiegg-homeip
</code></pre>
<p>として設定ファイルをviエディタなどで開きます。<br />
設定ファイルにすでに「/home/www/chibeigg/wordpress/」(ここも各自のWordPressの存在するフォルダに読み替えてください)についてのDirectory設定がある場合はその&lt;Directry&gt;の「AllowOverride None」を「AllowOverride All」に変更します。<br />
「&lt;Directory /home/www/chibiegg/&gt;」<br />
がない場合は以下のように追加しましょう。重要なのは「AllowOverride All」です。そのほかの部分は変更していただいても構いません。</p>
<pre><code>
&lt;Directory /home/www/chibiegg/&gt;
	Options -Indexes FollowSymLinks MultiViews
	AllowOverride All
	Order allow,deny
	Allow from all
&lt;/Directory&gt;
</code></pre>
<p>以上のように変更を保存します。<br />
もう一度Apache2を再起動しましょう</p>
<pre><code>
# /etc/init.d/apache2 restart
</code></pre>
<p>確認方法としてはWordPressのトップページを開き何かの記事をクリック。<br />
そのときのアドレスが正しく変更されていればOKです。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/20_23_79.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>moguraのPathのURLデコード</title>
		<link>http://blog.chibiegg.net/2007/11/20_22_76.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/20_22_76.htm#comments</comments>
		<pubDate>Tue, 20 Nov 2007 13:23:30 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Webサーバー]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/20_22_76.htm</guid>
		<description><![CDATA[アクセス解析ツールである 「mogura」のログのPathがURLエンコードされたままデコードされず表示されていました。 それではやはり見づらいので少し改造しログをURLデコードされた状態で記録するようにしました。 変更 [...]]]></description>
			<content:encoded><![CDATA[<p>アクセス解析ツールである 「mogura」のログのPathがURLエンコードされたままデコードされず表示されていました。<br />
それではやはり見づらいので少し改造しログをURLデコードされた状態で記録するようにしました。<br />
変更前<br />
<img src='http://chibiegg.homeip.net/wp-content/uploads/2007/11/mogura_url_before.jpg' alt='mogura_url_before.jpg' /><br />
変更後<br />
<a href='http://chibiegg.homeip.net/wp-content/uploads/2007/11/mogura_url_after.jpg' title='mogura_url_after.jpg'><img src='http://chibiegg.homeip.net/wp-content/uploads/2007/11/mogura_url_after.jpg' alt='mogura_url_after.jpg' /></a><br />
今回編集するのはmoguraフォルダにある「writelog.php」です。</p>
<p>Pathのログを途中でURLデコードし、文字コードをEUC-JPに変換するようにします。<br />
具体的には続きで&#8230;<br />
<span id="more-76"></span><br />
222行目あたりを以下のように修正します。<br />
編集前</p>
<pre><code>
//Path
if(isset($_GET["path"])){
	$w3a_buf["path"] = $_GET["path"];
	$w3a_buf["path"] = str_replace ("_P_", "%", $w3a_buf["path"]);
	$w3a_buf["path"] = str_replace ("_A_", "&amp;", $w3a_buf["path"]);
</code></pre>
<p>編集後</p>
<pre><code>
//Path
if(isset($_GET["path"])){
	$w3a_buf["path"] = $_GET["path"];
	$w3a_buf["path"] = urldecode($w3a_buf["path"]);
	$w3a_buf["path"] = @mb_convert_encoding($w3a_buf["path"], "EUC-JP", constant("TO_ENCODING"));
	$w3a_buf["path"] = str_replace ("_P_", "%", $w3a_buf["path"]);
	$w3a_buf["path"] = str_replace ("_A_", "&amp;", $w3a_buf["path"]);
</code></pre>
<p>ついでに、標準では取得する画像サイズがブラウザのウインドウサイズなのでモニターの解像度を取得するようにします。<br />
「w_js.php」と「w.php」の以下の部分のコメントアウトを外します。</p>
<p>編集前</p>
<pre><code>
/* モニターサイズ */
//w = screen.width;
//h = screen.height;
</code></pre>
<p>編集後</p>
<pre><code>
/* モニターサイズ */
w = screen.width;
h = screen.height;
</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/20_22_76.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress2.2のサムネイルサイズ</title>
		<link>http://blog.chibiegg.net/2007/11/19_20_74.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/19_20_74.htm#comments</comments>
		<pubDate>Mon, 19 Nov 2007 11:18:15 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/19_20_74.htm</guid>
		<description><![CDATA[本日アプデートしてからはじめてアップロード機能をつかいました。 以前「inline-upload.php」はそのままだと書きましたが正確には使われなくなったみたいです。 2.2からは「admin-functions.ph [...]]]></description>
			<content:encoded><![CDATA[<p>本日アプデートしてからはじめてアップロード機能をつかいました。<br />
<a href="http://chibiegg.homeip.net/2007/11/18_19_68.htm">以前</a>「inline-upload.php」はそのままだと書きましたが正確には使われなくなったみたいです。<br />
2.2からは「admin-functions.php」にサムネイル作成機能が移ったようです。</p>
<p>ということで<a href="http://chibiegg.homeip.net/2007/11/11_21_12.htm">以前のように</a>このコードの中の128と96を4:3の比率の好きな値にすることによってサムネイルのサイズ変更ができるようになりました。今回は400と300にしました。</p>
<p>今回参考にさせていただいたページ<br />
<a href="http://cyocyo.biz/wordpress/29/">cyocyo.biz</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/19_20_74.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ビジュアルエディタの改行</title>
		<link>http://blog.chibiegg.net/2007/11/18_20_69.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/18_20_69.htm#comments</comments>
		<pubDate>Sun, 18 Nov 2007 11:22:36 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/18_20_69.htm</guid>
		<description><![CDATA[前回の記事でビジュアルエディタで改行が消えるという話をしました。 過去の記事を編集した場合だけではないようで。 やってみると、 「ビジュアルエディタとソースエディタを行き来すると改行がすべて消える」 ということでビジュア [...]]]></description>
			<content:encoded><![CDATA[<p>前回の記事でビジュアルエディタで改行が消えるという話をしました。<br />
過去の記事を編集した場合だけではないようで。</p>
<p>やってみると、<br />
「ビジュアルエディタとソースエディタを行き来すると改行がすべて消える」<br />
ということでビジュアルエディタは使いません。<br />
せっかく便利なのに。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/18_20_69.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPressを2.2.3にバージョンアップ</title>
		<link>http://blog.chibiegg.net/2007/11/18_19_68.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/18_19_68.htm#comments</comments>
		<pubDate>Sun, 18 Nov 2007 10:27:00 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/18_19_68.htm</guid>
		<description><![CDATA[やっぱりバージョンアップをしようと思ったのでやってみました。 実は以前こっそりやって失敗した 作業は簡単ですぐ終わります(笑) とりあえずファイル全部とMySQLのデータベースはphpMyAdminからバックアップしてあ [...]]]></description>
			<content:encoded><![CDATA[<p>やっぱりバージョンアップをしようと思ったのでやってみました。<br />
<del datetime="2007-11-18T10:13:56+00:00">実は以前こっそりやって失敗した</del></p>
<p>作業は簡単ですぐ終わります(笑)<br />
とりあえずファイル全部とMySQLのデータベースはphpMyAdminからバックアップしてあると仮定します。<br />
そしてプラグインはすべて無効にしましょう。<br />
<span id="more-68"></span><br />
<a href="http://wordpress.xwd.jp/">WordPress Japan</a>から2.2.3MEをダウンロードしてきて解凍します。<br />
ファイルをすべて既存のWordPressに上書きします。<br />
このとき注意しないといけないのはMacを使っている場合普通に上書きするとフォルダがマージされないので<a href="http://allabout.co.jp/computer/macos/closeup/CU20020213asc/">ここ(フォルダー同士の更新コピー)</a>を参考にマージしながらコピーします。<br />
あるいはサーバー上でやるか、Windowsからすればいいのですが。<del datetime="2007-11-18T10:13:56+00:00">以前はこれを忘れていたので失敗しました。</del></p>
<p>そしてwp-admin/upgrade.phpに節夫くしアップデート作業をします。<br />
最後に必要なプラグインを有効化します。設定などはすべて引き継がれます。<br />
<del datetime="2007-11-19T11:18:50+00:00"><a href="http://chibiegg.homeip.net/2007/11/11_21_12.htm">以前変更した</a>サムネイルのサイズもそのままでした。</del><br />
<a href="http://chibiegg.homeip.net/2007/11/19_20_74.htm">すいません間違いでした。サムネイル作成機能が移動しています。こちらを参考にしてください。</a></p>
<p>一応問題なく動作していますが、リッチテキストエディタで&lt;pre&gt;&lt;code&gt;タグのある記事を開いて保存すると改行がすべてなくなりめちゃくちゃになってしまったのでgoogleのキャッシュから読んできて保存し直しました。&lt;pre&gt;&lt;code&gt;って重ねたら駄目なのかな。&lt;code&gt;だけでいいような。なんで最初に両方書いてしまったのか&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/18_19_68.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debianのiptables設定</title>
		<link>http://blog.chibiegg.net/2007/11/17_00_62.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/17_00_62.htm#comments</comments>
		<pubDate>Fri, 16 Nov 2007 15:04:10 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/16_23_62.htm</guid>
		<description><![CDATA[Debianでiptablesの設定をしていてふと/etc/init.d/iptables saveしてみると/etc/init.d/iptablesはそんざいしないと言われてしまった。Debianからは削除されてしまっ [...]]]></description>
			<content:encoded><![CDATA[<p>Debianでiptablesの設定をしていてふと/etc/init.d/iptables saveしてみると/etc/init.d/iptablesはそんざいしないと言われてしまった。Debianからは削除されてしまったらしい。ということで友人が「stop」「save」で保存「start」「restore」で設定の読み込みをするスクリプトを作ってくれたのを頂いた。快く許可してくださり以下にiptablesの設定方法と共に記載する。<span id="more-62"></span>まずは設定方法。</p>
<pre><code>
$ su
# iptables -P INPUT ACCEPT
# iptables -P FORWARD DROP
# iptables -P OUTPUT ACCEPT
# iptables -F# iptables -A INPUT -p icmp -j ACCEPT
# iptables -A INPUT -i lo -j ACCEPT
</code></pre>
<p>これでいったん全部許可し、「ping」と自分自身からの接続を許可したことになる。<br />
続いてポートごとに許可をしていく。<br />
必要なら個別に追加しいらないものは削除してほしい。</p>
<pre><code>
# iptables -A INPUT -p tcp --dport 80 -j ACCEPT    //http
# iptables -A INPUT -p tcp --dport 443 -j ACCEPT   //https
# iptables -A INPUT -p tcp --dport 548 -j ACCEPT   //netatalk
# iptables -A INPUT -p tcp --dport 21 -j ACCEPT    //FTP
# iptables -A INPUT -p tcp --dport 110 -j ACCEPT   //POP
# iptables -A INPUT -p tcp --dport 25 -j ACCEPT    //SMTP
# iptables -A INPUT -p tcp --dport 22 -j ACCEPT    //SSH
</code></pre>
<p>そして応答とデータを許可しその他をすべて拒否する。</p>
<pre><code>
# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# iptables -P INPUT DROP
</code></pre>
<p>これでOK。</p>
<p>しかしこのままでは再起動すると設定が削除されてしまいます。<br />
ここで友人にもらったスクリプトを使います。</p>
<pre><code>
# vi /etc/init.d/iptables
</code></pre>
<p>とスクリプトを新規作成し、以下のように記述し保存します。</p>
<pre><code>
#!/bin/bash
start(){
iptables -F
iptables-restore < /etc/iptables.save
return 0
}
stop(){
iptables-save > /etc/iptables.save
return 0
}

case "$1" in
start)
start
;;
stop)
stop
;;
save)
stop
;;
restore)
start
;;
restart)
stop
start
;;
esac

</code></pre>
<p>注意：これは保存と読込をするだけであって実際にiptablesの起動や終了はしません。<br />
そして、パーミションの変更と登録、そして設定の保存。</p>
<pre><code>
# chmod 755 /etc/init.d/iptables
# update-rc.d iptables defaults 18
# /etc/init.d/iptables save
</code></pre>
<p>これで再起動したときも自動で設定ファイルが読み込まれます。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/17_00_62.htm/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Search Hilite</title>
		<link>http://blog.chibiegg.net/2007/11/17_00_64.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/17_00_64.htm#comments</comments>
		<pubDate>Fri, 16 Nov 2007 15:01:32 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/17_00_64.htm</guid>
		<description><![CDATA[以前この記事でインストールした「Search Hilite」について。 今日気がついたのだが、GoogleやYahoo!などからの検索で記事を開いた場合もキーワードがハイライトされるのだ。自分がただ知らなかっただけなのか [...]]]></description>
			<content:encoded><![CDATA[<p>以前<a href="http://chibiegg.homeip.net/2007/11/14_22_50.htm">この記事</a>でインストールした「Search Hilite」について。<br />
今日気がついたのだが、GoogleやYahoo!などからの検索で記事を開いた場合もキーワードがハイライトされるのだ。自分がただ知らなかっただけなのかもしれないが。</p>
<p>「search-hilite wordpress 設定」でgoogleから開いた例<br />
<a href="http://chibiegg.homeip.net/wp-content/uploads/2007/11/searchhilite2.jpg" title="Search Hilite" class="imagelink"><img src="http://chibiegg.homeip.net/wp-content/uploads/2007/11/searchhilite2.thumbnail.jpg" alt="Search Hilite" id="image63" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/17_00_64.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPressから外部SMTPを使う</title>
		<link>http://blog.chibiegg.net/2007/11/15_22_59.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/15_22_59.htm#comments</comments>
		<pubDate>Thu, 15 Nov 2007 13:53:00 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/15_22_59.htm</guid>
		<description><![CDATA[前の記事の「Dunstan-style Error Page」を使ってて気がついたのですが。 何かというとこのエラーページについている「エラー報告」が送られていないということです。 よく考えるとWordPressからの本 [...]]]></description>
			<content:encoded><![CDATA[<p>前の記事の「Dunstan-style Error Page」を使ってて気がついたのですが。<br />
何かというとこのエラーページについている「エラー報告」が送られていないということです。<br />
よく考えるとWordPressからの本来送信されてくるメールがないことに気がつきました。(その時点で遅いのですが)<br />
調べてみると標準ではサーバーにメールサーバーがないと送信できないらしいですね。</p>
<p>ということでそれは大変なので探すとメール送信を外部のSMTPサーバーから送ることのできるようになるプラグイン「Cimy Swift SMTP」を見つけました。<br />
ダウンロードは<a href="http://www.cimatti.it/blog/cimy-wordpress-plugins/cimy-swift-smtp/">ここ</a>から。<br />
<span id="more-59"></span><br />
いつもの通り「plugins」フォルダーにいれて管理画面から有効化します。<br />
すると「オプション」に「Cimy Swift SMTP」ができるのでSMTPの送信設定をします。<br />
ところがなぜかK-OPTI.COMのメールサーバーではエラーになったので他サイトで実績のある「<a href="http://mail.google.com/">GMail</a>」を使うことにしました。<br />
設定例を挙げておきます。</p>
<blockquote><p>
Sender name:適当に<br />
Sender e-mail:これはGMailのアドレス</p>
<p>SMTP server address:smtp.gmail.com<br />
Port:465(Use for SSL/TLS/GMAIL)<br />
Username:GMailのアドレス<br />
Password:GMailのパスワード<br />
Use SSL or TLS?:	TLS(Use For Gmail)
</p></blockquote>
<p>この設定でTest Connectionからのテストメール送信やコメント通知機能のメールは送信できるようになりました。<br />
しかし「Dunstan-style Error Page」のメールは送信されません。<br />
「Cimy Swift SMTP」Test ConnectionのPHPファイルと「wp-content/plugins/afdn_error_page.php」を比べると送信関数が「wp_mail(&#8230;);」ではなく「mail(&#8230;);」になっていました。<br />
とりあえず送信できるほうに合わそうと、「wp-content/plugins/afdn_error_page.php 」の２カ所「mail(&#8230;..」を「wp_mail(&#8230;..」に修正することで送信できるようになりました。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/15_22_59.htm/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>プラグイン</title>
		<link>http://blog.chibiegg.net/2007/11/14_22_50.htm</link>
		<comments>http://blog.chibiegg.net/2007/11/14_22_50.htm#comments</comments>
		<pubDate>Wed, 14 Nov 2007 13:26:13 +0000</pubDate>
		<dc:creator>chibiegg</dc:creator>
				<category><![CDATA[サーバー管理]]></category>
		<category><![CDATA[Webサーバー]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://chibiegg.homeip.net/2007/11/14_22_50.htm</guid>
		<description><![CDATA[いろいろとWordPressにも慣れてきたのでもっとプラグインを探していこうと思っていたところに見つけた 「WordPress をインストールしたら最初に入れる10のプラグイン」を参考にして入れたプラグインを紹介します。 [...]]]></description>
			<content:encoded><![CDATA[<p>いろいろとWordPressにも慣れてきたのでもっとプラグインを探していこうと思っていたところに見つけた<br />
「<a href="http://plasticdreams.org/archives/2006/06/24/1260/first-install-10-plugins/">WordPress をインストールしたら最初に入れる10のプラグイン</a>」を参考にして入れたプラグインを紹介します。<br />
今回インストールしたのは<br />
「Search Hilite」検索結果ページのキーワードをハイライトする<br />
「Smart update pinger」標準のPing送信を置き換える形でPing送信をする、手動で送信も可能<br />
スパム対策<br />
「Dunstan-style Error Page」ページNot Foundを高機能にしてくれるプラグインです。<br />
の3つです。</p>
<p>「Search Hilite」<br />
<a href="http://www.blog.mediaprojekte.de/cms-systeme/wordpress/wordpress-plugin-search-hilite/">このサイト</a>より「search-hilite_1.9.zip (15.07.2006 00:47)」をダウンロードしてきて解凍します。解凍してできた「search-hilit」フォルダをフォルダごと「wp-content/plugins」フォルダーにコピーします。<br />
そして管理メニュの「プラグイン」から「Search_Hilite」の有効化リンクをクリックします。<br />
インストールはこれだけで設定もなにもありません。<br />
検索ウインドウから検索すると以下のようにキーワードがハイライトされました。<br />
<a class="imagelink" href="http://chibiegg.homeip.net/wp-content/uploads/2007/11/search_hilite.jpg" title="Search_Hilite"><img id="image57" src="http://chibiegg.homeip.net/wp-content/uploads/2007/11/search_hilite.thumbnail.jpg" alt="Search_Hilite" /></a></p>
<p>「Smart update pinger」<br />
これは参考にさせていただいたブログの方が日本語にしたバージョンを<a href="http://plasticdreams.org/archives/2006/05/27/1219/smart-update-pinger/">ここ</a>からダウンロードし「smart-update-pinger.php」を「wp-content/plugins」にコピーします。<br />
これも同じように管理メニュの「プラグイン」から有効化します。<br />
設定は「オプション」の「Smart update pinger」から行います。</p>
<p>「Dunstan-style Error Page」<br />
こちらも<a href="http://plasticdreams.org/archives/2007/03/29/1698/dunstan-style-error-page-ver-131-localize-into-japanese/">ここ</a>から日本語化されたバージョンをダウンロードします。<br />
(と思ったのですがダウンロードリンクがおかしかったのですが直リンクは失礼なのでアドレスを書いておきます。http://plasticdreams.org/uploads/projects/afdn_error_page.php.zip)<br />
解凍してできた「afdn_error_page.php」を「wp-content/plugins」にコピーし管理メニュの「プラグイン」から有効化します。<br />
このプラグインはそれだけでは反映されないので「表示」の「テーマエディタ」から「404 ページ」を開きます。<br />
そして内容をすべて削除し(バックアップを取ってから)「&lt;?php afdn_error_page(); ?&gt;」の一行だけのファイルにします。<br />
ほんとはこれでいけるのですが現在使用しているテーマではデザインが崩れてしまったので以下のように修正しました。<br />
まずは「404 ページ」から。</p>
<p>元のソース</p>
<pre><code>
&lt;?php get_header(); ?&gt;
  &lt;div id="content"&gt;

    &lt;div class="post"&gt;
        &lt;h2&gt;Error 404 - ページがありません&lt;/h2&gt;

		&lt;div class="entry"&gt;
		&lt;p&gt;申し訳ありません、指定されたページは存在しません。リンク切れの場合はご連絡いただけると幸いです。&lt;/p&gt;
		&lt;/div&gt;&lt;!--/entry --&gt;

	&lt;/div&gt;&lt;!--/post --&gt;

  &lt;/div&gt;&lt;!--/content --&gt;

  &lt;div id="footer"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;!--/left-col --&gt;

&lt;?php get_sidebar(); ?&gt;

&lt;?php get_footer(); ?&gt;
</code></pre>
<p>編集後</p>
<pre><code>
&lt;?php get_header(); ?&gt;
  &lt;div id="content"&gt;

    &lt;div class="post"&gt;
		&lt;div class="entry"&gt;
&lt;?php afdn_error_page(); ?&gt;
		&lt;/div&gt;&lt;!--/entry --&gt;

	&lt;/div&gt;&lt;!--/post --&gt;

  &lt;/div&gt;&lt;!--/content --&gt;

  &lt;div id="footer"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;!--/left-col --&gt;

&lt;?php get_sidebar(); ?&gt;

&lt;?php get_footer(); ?&gt;
</code></pre>
<p>次に「afdn_error_page.php」も編集します。<br />
346行目付近「&lt;?php get_header(); ?&gt;」<br />
427行目付近「&lt;?php get_footer(); ?&gt;」<br />
の２行を削除しました。<br />
これで以下のように正しく表示されました。<br />
<a class="imagelink" href="http://chibiegg.homeip.net/wp-content/uploads/2007/11/404.jpg" title="404ページ"><img id="image58" src="http://chibiegg.homeip.net/wp-content/uploads/2007/11/404.thumbnail.jpg" alt="404ページ" /></a></p>
<p>今回は以上です。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chibiegg.net/2007/11/14_22_50.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
<!-- This Quick Cache file was built for (  blog.chibiegg.net/category/%e3%82%b5%e3%83%bc%e3%83%90%e3%83%bc%e7%ae%a1%e7%90%86/feed ) in 0.65653 seconds, on Feb 8th, 2012 at 7:13 am UTC. -->
<!-- This Quick Cache file will automatically expire ( and be re-built automatically ) on Feb 8th, 2012 at 8:13 am UTC -->
