» home

格安サーバ・ロリポップを使い倒す

zuzara.comの各サービスはロリポップのサーバで運営されています。日頃の感謝を込めて月額263円のサービスを「ホリデープログラミング」する上でいかに使い倒しているか紹介したいと思います。

安い

ムームードメインで独自ドメインの.comを買っても初年度約5000円の投資のみ。これは、ものすごいコストパフォーマンスだと思う。

サブドメイン

バーチャルホストと思われる設定をWeb上の管理画面から行え、サブドメインが無制限に作れる。(ドキュメントに明記されていない模様だが制限はあるかもしれない)各サービスごとに絶対パスが/になってくれるので管理がちょっと楽。

PHP+MySQL

PHPは2006年7月現在4.3.11でコンパイルオプションは以下。gdが動くので特に困ったことはない。

'./configure'
'--enable-ftp'
'--with-mysql'
'--with-gd'
'--with-ttf'
'--with-apxs=/usr/local/apache/bin/apxs'
'--enable-track-vars'
'--enable-trans-sid'
'--enable-zend-multibyte'
'--enable-mbstring'
'--enable-mbregex'
'--enable-mbstr-enc-trans'
'--enable-memory-limit'
'--enable-sockets'
'--with-jpeg-dir=/usr'
'--with-png-dir=/usr'
'--with-freetype-dir=/usr'
'--with-zlib-dir=/usr'
'--enable-exif'
'--with-dom=/usr/local'
'--with-dom-xslt'
'--enable-xslt'
'--with-xslt-sablot'

MySQL3.23.49はphpMyAdminで管理。データベースは1つしか作れない。

*.so

PHPのdlで拡張できてしまう。php-jsonADOdb辺りが便利。コンパイルは別の環境で行ってsoファイルをアップロードすれば使える。

ローカルに開発環境は必要

ロリポップはFTPしか使えないので開発環境はローカルにないと不便。FTPは昔からFFFTP。
自分は先日無料になったVirtualPC2004上のWhiteBoxLinuxでSambaを動かしてWindowsのgvimで編集している。なおVirtualPCはCentOS4などいくつかのOSがインストールできないので要注意。(動作確認したOS一覧が表になったページがあったが失念⇒コメントで教えていただきました:What Works and What Doesn’t in Microsoft Virtual PC 2004

他にもVMwareやcoLinuxも無料で使える。

PEAR

PHPのPEARはデフォルトではあまり充実していないので自分でPEARのサイトからダウンロードして解凍、必要なファイルをアップロードする必要がある。一番使っているのがCache_Lite。
Cache_Liteのベースになるコード。

<?php
require_once 'Cache/Lite.php';

$cacheOptions = array (
    'cacheDir' => 'tmp/',
    'lifeTime' => 3600, // seconds
);

$cacheId = $url;

$objCache = new Cache_Lite($cacheOptions);

if ($cache = $objCache->get($cacheId)) {
    $buf = $cache;
} else {
    $buf = file_get_contents($url);
    $objCache->save($buf, $cacheId);
}
?>

参考:
ブラウザからPEARをインストールする

cron

cronは使えない。どうしても必要な時は別のcronが使えるサーバからping(HTTPでアクセスするだけ)して代用。

.htaccess

php.iniの設定が古めなので必須。

php_flag register_globals Off
php_value error_reporting 2047
php_flag display_errors Off
php_flag log_errors On
php_value error_log ログへのパス

見られたくないディレクトリ用。PukiWiki参照。

Order allow,deny
Deny from all

mod_rewriteも動く。2.0っぽいきれいなURLを実現。Zend_Framework参照。

RewriteEngine on
RewriteRule !\.(html|txt|js|ico|gif|jpg|png|css)$ index.php

404ページはロリポのページなので設定しておいた方が無難。

ErrorDocument 404 http://www.zuzara.com/notfound.php
ErrorDocument 403 http://www.zuzara.com/notfound.php

MySQLのコネクション数の制限が厳しい

共有サーバだけあって若干重い。MySQLのToo many connectionsエラーが比較的目に付く。PEARのCache_Liteなどでキャッシュする必要がある。

静的なページなら1日2万PVぐらいは平気。ただ、PVが増えるとHDDの容量が(おそらくはapacheのログで)すぐいっぱいになってしまうので月額+105円で500MBまで増やす必要が出てくるかも。

アクセス解析は別サービスの方がよさげ

管理画面からanalogの解析結果を見れるが、GoogleAnalyticsの方が断然いい。一応、apacheの生ログもホスト名ごと、日別にダウンロードできる。リアルタイムではなく、半日ほどずれて昨日のログがダウンロードできる、という具合。

というわけでおすすめです、ロリポップ

By: funaki | 2006年7月23日 | いじる | Trackback | Comments [RSS 2.0]

12 Comments »

  1. 地図で探すゴルフ場検索「ファー!」も
    ロリポ+ムームーです。

    サブドメインぼこぼこ作れるのが便利ですね。
    ただDNSサーバーがいじれないのが、ちょっと残念。

    Comment by totok — 2006年7月24日 @ 05:31

  2. DNSサーバいじれない関係で、ロリポからの引越すとなると大変ですよね。大ヒットしたサービスがあったらそのサブドメインだけ別サーバにしたいところではありますが。

    Comment by funaki — 2006年7月24日 @ 20:06

  3. PHPで眠い…

    昨晩PHPのプログラミングをして、ちょっとどつぼにはまってしまって深夜になってし……

    Trackback by かずほの日記 — 2006年7月25日 @ 00:17

  4. >(動作確認したOS一覧が表になったページがあったが失念)
    ttp://vpc.visualwin.com/
    もしや、ここでは?

    Comment by これ — 2006年7月26日 @ 09:55

  5. ぁ、まさにそれです。どうもありがとうございます!

    Comment by funaki — 2006年7月27日 @ 00:38

  6. ロリポップというところは使いやすそうですね。

    いま、100円サーバーで失敗して
    レンタルサーバーの比較ページを歩いているところですが、
    価格的にもロリポップが手ごろですかね。

    Comment by レンタルサーバー探し中 — 2006年10月3日 @ 21:06

  7. はじめまして。ずいぶん前ですが、ロリポでMySQLのテーブルを無意味に大量に作っていったら700個あたりまで作れた記憶があります、これがMySQLの仕様かロリポの仕様かはわからないですが。

    Comment by ロリプ~! — 2006年10月8日 @ 00:07

  8. はじめましてヽ(●´ー`●)/
    リルーンです!>ω・*

    リルーンも使っていますよ~!

    PHPもCGIも使えますし、レンタルブログや自分でのブログ設置もできる、という面が素晴らしいです!(o^▽≦o)゜*

    大変重宝していますよ!Web2.0に沿ったホームページの作成を学ぶ機会にもなりますし!(≧ε≦○)

    ではっ!>∀<∩

    Comment by リルーン — 2006年11月8日 @ 22:41

  9. ロリポップ!…

    現在利用中のサーバーは
    ロリポップ!

    です。
    同じ系列会社の
    ムームードメイン


    年間808円
    で「.net」ドメインを取得して
    さらに【 ムームードメイン 】 ユーザーキャンペーンで初期….

    Trackback by WordPressメモ — 2007年2月21日 @ 01:34

  10. Railsは環境を選ぶ…

    CPU: Pentium II/Pentium II Xeon/Celeron (331.83-MHz 686-class CPU)
    Origin = “GenuineIntel” Id = 0×66a Stepping = 10
    Features=0×183f9ff
    real memory = 134152192 (127 MB)

    な箱だとちょっとしたRailsアプリケーションをFastCGI経…

    Trackback by [や] YAizawa's diary — 2007年2月21日 @ 17:24

  11. > PHPのdlで拡張できてしまう。
    ってことでSQLiteも使えるんですね
    http://mtr.boy.jp/blog/sqliteinlolipop.html

    Comment by making — 2007年3月29日 @ 23:58

  12. おぉ。いいですね。

    Comment by funaki — 2007年3月30日 @ 08:50

RSS feed for comments on this post. TrackBack URI

コメントはお気軽にどうぞ

↑top