Break Out!? - blog ver.

こっちー(kojiaki)がメモとか物欲の記録とかラーメン食べ歩きとかを書きなぐる blog みたいなものです。

CentOS 5.5 に PHP の ZIP モジュールをインストール

できるだけパッケージで使いたいおいらですが
パッケージが無かったので手動でホイホイインストール

# yum install php-pear
# pecl install zip-1.8.10.tgz
あとは/etc/php.iniの適当なところに
extension=zip.so
を追加して
# /etc/init.d/httpd restart
すればおk

なんでインストールするの?って?
ownCloud で必要だからですよ(´・ω・`)
今のところいろいろエラー(やれTimeZoneだとかjson_decodeだとか)が出てるから
ubuntuか他の新しめのディストリビューションで動かそうか悩んでますが・・・

2012/01/07 追記
調べたら上記エラーは以下で直りました
# pecl install json-1.2.1.tgz
/etc/php.ini へ extension=json.so 追加
# yum install php-pear-Date.noarch
まぁ、php 5.2から追加されたDateTimeZoneが無いので結局だめですが(´・ω・`)
php のバージョン上げるのは流石に躊躇するわぁ・・・

ReverseProxy とやらを使ってみる

昨日作成した PT2 録画サーバを外部公開するのはさすがに躊躇いがあるので
現在の web サーバからリバースプロキシを使ってアクセスするように設定した時のメモ

以下の設定を httpd.conf なり別ファイルに書いて include する

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

# for security
ProxyRequests Off
ProxyPass /proxy_path/ http://192.168.xxx.xxx/hogehoge/
ProxyPassReverse /proxy_path/ http://192.168.xxx.xxx/hogehoge/

設定的には
フロントサーバに http://xxx.xxx.xxx/proxy_path/ ってアクセスが来た場合
バックエンドにある http://192.168.xxx.xxx/hogehoge/ のコンテンツを返すようになります
いわゆる proxy じゃないので ProxyRequest は Off にしましょう

現在稼働している環境では Location ディレクティブで IP レベルの制限かけて
会社と自宅のみアクセス可能にしています
そのうち iPhone の UI とか作ってみたいなぁ

備忘録: Apache で旧ドメインへのアクセスを新ドメインへ飛ばす設定

以前 www 無しのアクセスを www ありへ飛ばす設定を mod_rewrite を使って実現しましたが
今回はドメインが home-dc.net へ変わったのでその設定をメモ
すでにドメイン切り替えたときから使ってるけどねw
以下設定

RewriteEngine On
RewriteCond %{HTTP_HOST} ^kojiaki.no-ip.info$ [OR]
RewriteCond %{HTTP_HOST} ^www.kojiaki.no-ip.info$
RewriteRule ^/(.*) http://www.home-dc.net/$1 [L,R=301]

前回と違うのは [OR] をつけて www 付の URL も新ドメインへ 301 返して飛ばすようにしたこと
[OR] を付け忘れると AND 条件になってしまっていつまでたっても一致しないので注意

調べると環境変数を使っていろいろいじれるみたい
なんか面白い使い方があったらまたメモしよう

忘れたころにやってくる罠

家のサーバは VineLinux 使ってるのですが
昨日だったか一昨日だったか Apache のアップデートがあったんですよ
新し物好きな弊社としては入れないと、ってことで
# apt-get update && apt-get dist-upgrade
かましたんですが

見事にCGIが動きませんでした、ほんとうに(ry

原因は SUEXEC でした
なんていうか、滅んでしまえ、と思った
mod_suexec.so ロードしてなくても suexec 存在するだけでだめってどうよ?
ってことで
/usr/lib/apache2/suexec をリネームして apache 再起動で終了

はぁぁ

Apache2.2 で www 無しのアクセスを www 有りに飛ばす

現在利用している DDNS のサービスの関係で
kojiaki.no-ip.info であろうが www.kojiaki.no-ip.info であろうが到達できてしまうので
301 返して www.kojiaki.no-ip.info に来てもらうよう設定を施した
以下の設定を入れるだけ

RewriteEngine On
RewriteCond %{HTTP_HOST} ^kojiaki.no-ip.info$
RewriteRule ^/(.*) http://www.kojiaki.no-ip.info/$1 [L,R=301]

簡単に説明すると
RewriteCond で RewriteRule に対する条件を設定
ここでは HTTP_HOST 変数を利用し kojiaki.no-ip.info の場合に限定
上記アクセスの場合のみ www.kojiaki.no-ip.info へ飛ばすように設定
このように書くことによりディレクトリ構造ごとぶっ飛ばせるので
クライアントは特に意識する必要が無くなる