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

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

安い

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

サブドメイン

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

PHP+MySQL

2009年6月現在はPHP5を選択できるようになった。今から使うのであれば自動的に5になる。バージョンは5.2.6。コンパイルオプションは以下。curlやopensslが使えるようになった。5から登場のPDOやjsonも使える。

'./configure'
'--prefix=/usr/local/php5'
'--sysconfdir=/usr/local/php5/etc'
'--with-config-file-path=/usr/local/php5/lib'
'--disable-debug'
'--enable-bcmath=yes'
'--enable-debug=no'
'--enable-discard-path'
'--enable-dom'
'--enable-exif'
'--enable-force-cgi-redirect'
'--enable-ftp'
'--enable-gd-native-ttf'
'--enable-magic-quotes=yes'
'--enable-mbregex'
'--enable-mbstring'
'--enable-safe-mode'
'--enable-simplexml'
'--enable-soap'
'--enable-sockets'
'--enable-sqlite-utf8'
'--enable-zend-multibyte'
'--with-curl'
'--with-bz2'
'--with-gettext=/usr/local'
'--with-iconv'
'--with-iconv-dir=/usr/local/include'
'--with-gd'
'--with-jpeg-dir=/usr/local'
'--with-png-dir=/usr/local'
'--with-freetype-dir=/usr/local'
'--with-ttf'
'--with-zlib=/usr'
'--with-zlib-dir=/usr'
'--with-ttf'
'--with-openssl'
'--with-mcrypt=/usr/local'
'--with-xsl=/usr/local'
'--with-xmlrpc'
'--with-mysql=/usr'
'--with-pcre-dir=/usr'
'--with-pear=/usr/local/php5/php'
'--with-pdo-mysql=/usr'
'--with-pdo-pgsql=/usr'
'--with-pdo-sqlite'
'--with-pgsql=/usr'
'--with-sqlite'

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

PHP5での動作は未確認。特に必要ないだろう。

PHP4環境では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も無料で使える。

追記
最近は Mac 使いなのでそのまま apache+mysql+php 環境が整う。Windows なら VMware を使うところ。

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

PHP5環境では.htaccessやini_setで設定を変えられない。ロリポップのユーザ画面から設定できる項目は以下に載っている。PHP4のときに設定できた項目のため、という雰囲気だが display_errors の設定ができないのが痛い。(2009年6月現在ロリポップに問い合わせ中 => 要望として受け入れられた模様)

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 /notfound.php
ErrorDocument 403 /notfound.php

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

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

静的なページなら1日2万PVぐらいは平気。ただ、PVが増えるとHDDの容量が(おそらくはapacheのログで)すぐいっぱいになってしまうので月額+105円で500MBまで増やす必要が出てくるかも。
ちなみに容量を一度増やすと減らせないので(月額料金はずっと増えたまま)要注意。
追記
2009年6月29日から月額は同じで容量が1GBに増える。また、契約更新時に増量プランから元に戻せるそうだ。

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

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

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

This entry was posted in いじる. Bookmark the permalink. Both comments and trackbacks are currently closed.

11 Comments

  1. Posted 2006/07/24 at 5:31 am | Permalink

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

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

  2. Posted 2006/07/24 at 8:06 pm | Permalink

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

  3. これ
    Posted 2006/07/26 at 9:55 am | Permalink

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

  4. Posted 2006/07/27 at 12:38 am | Permalink

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

  5. Posted 2006/10/03 at 9:06 pm | Permalink

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

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

  6. ロリプ~!
    Posted 2006/10/08 at 12:07 am | Permalink

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

  7. Posted 2006/11/08 at 10:41 pm | Permalink

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

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

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

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

    ではっ!>∀<∩

  8. Posted 2007/03/29 at 11:58 pm | Permalink

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

  9. Posted 2007/03/30 at 8:50 am | Permalink

    おぉ。いいですね。

  10. Neo
    Posted 2009/01/07 at 1:21 pm | Permalink

    参考になりました

  11. mony
    Posted 2009/07/05 at 2:54 pm | Permalink

    私も以前からロリポップを使ってます。
    このところ「Zend Framework」の本を買って少し勉強していますが、サンプルをロリポにアップロードしても、php.ini とか .htaccess の 設定とかがよく分かりません。
    Zend framework を置く場所とか RewriteBase の
    設定とかを教えてください。
    よろしくお願いします。

10 Trackbacks

  • By かずほの日記 on 2006/07/25 at 12:17 am

    PHPで眠い…

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

  • By WordPressメモ on 2007/02/21 at 1:34 am

    ロリポップ!…

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

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


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

  • By [や] YAizawa's diary on 2007/02/21 at 5:24 pm

    Railsは環境を選ぶ…

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

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

  • […] ロリポップについて詳しく記述されているブログ ブラウザからPEARをインストールする カテゴリー: 未分類 タグ: コメント (0) トラックバック (0) コメントをどうぞ トラックバックURL […]

  • […] ロリポップについて詳しく記述されているブログ ブラウザからPEARをインストールする カテゴリー: PEAR(ペア) タグ: […]

  • […] zuzara.com » 格安サーバ・ロリポップを使い倒すs » 地図で探すゴルフ場検索「ファー!」も ロリポ+ムームーです。 サブドメインぼこぼこ作れるのが便利ですね。 ただdnsサーバーがいじれないのが、ちょっと残念。 comment by totok — 2006年7月24日 @ 05:31 dnsサー…はてなブックマークより […]

  • […] zuzara : 格安サーバ・ロリポップを使い倒すhttp://blog.zuzara.com/2006/07/23/100/ […]

  • […] zuzara.com » 格安サーバ・ロリポップを使い倒すーバーで失敗して レンタルサーバーの比較ページを歩いているところですが、 価格的にもロリポップが手ごろですかね。 comment by レンタルサーバー探し中 — 2006年10月3日 @ 21:06 はじめまして。ずいぶん前ですが、ロリポでmysqlの…はてなブックマークより […]

  • […] zuzara.com » 格安サーバ・ロリポップを使い倒すーバーで失敗して レンタルサーバーの比較ページを歩いているところですが、 価格的にもロリポップが手ごろですかね。 comment by レンタルサーバー探し中 — 2006年10月3日 @ 21:06 はじめまして。ずいぶん前ですが、ロリポでmysqlの…はてなブックマークより […]

  • By Rewrite OP on 2011/06/28 at 10:52 am

    […] zuzara.com » 格安サーバ・ロリポップを使い倒すiteinlolipop.html comment by making — 2007年3月29日 @ 23:58 おぉ。いいですね。 comment by funaki — 2007年3月30日 @ 08:50 rss feed for comments …はてなブックマークより […]

Page optimized by WP Minify WordPress Plugin