2009年12月30日水曜日

全国の今日の気分測定 [携帯][iPhone]

・-10〜10で今日の気分を送信する。
 ⇒プルダウンかな。
・テキストはなし。
・同時にGPSの位置情報も送信。
・別メニューからは全国の今日の気分を見れる
 ⇒全国、都道府県、市区町村レベルまで細分化可能
 ⇒値としては平均値/プラス人数/マイナス人数/を総数、男女別で表示
・オプション的にその日の天候や大きいニュースも保存しておく。
・将来的には、コメントや年齢層なども送信するけどとりあえずは気楽なインターフェースにする
・まずはPHPでwebベースでテストしてからiPhoneアプリなどで構築
 ⇒うちの環境ではiPhoneアプリは作れないので会社で作るかぁ・・・

面白そうじゃないかな。
みんな使うかわからないけど。。

2009年12月3日木曜日

携帯でのHTTP_HOSTとPORTとHTTPS [携帯][PHP]

PEAR::Net_URLを使っててコンストラクタに渡すURLが完全なURLでない場合(ドキュメントルート以下のパスだけ。/sample/index.phpとか。)環境変数のHTTP_HOSTから値をもってきて色々やって完全URLを作るみたいですが、ezwebでSSL領域から非SSL領域に移動するときに使用するとHTTP_HOSTにポート番号(443)がついてしまう。
ex) $_SERVER[HTTP_HOST] => www.example.com:443

これはezwebの仕様なのかこの場合のサーバの設定のせいなのか、ともかく非SSL領域なのに443ポートがついたURLが生成されてしまいアクセス出来ない。

つまり、
https://www.example.com/index.php から http://www.example.com/sample/index.phpに移動しようとして、Net_URLのコンストラクタにsample/index.phpって渡すとhttp://www.example.com:443/sample/index.phpにアクセスしてしまい表示されない(502エラー。Gatewayエラー?)

と、ここまで書いてプログラムを見直してみたけど、Net_URLは環境変数HTTPSでSSLか非SSLを判定しているようだ。
このサーバでは環境変数にHTTPSがないので非SSL領域に移動してしまいエラーになってるようだ。
むぅ。

とりあえずコンストラクタに渡すURLを完全URLに変更することで回避してみようかと思う。

2009年12月1日火曜日

PHPでのエラー制御:画面真っ白 [PHP]

phpで書いたページでたまに画面が真っ白になることがある。
今日も真っ白になってしまったので、
ini_set('display_errors', 'On');
error_reporting(E_ALL);
とかでエラーを見てみようかな、と思ったけど一向に表示されない。
なので頑張って検索してみたら有力な情報を発見。


それによるとE_ALLでは0と扱われて全てのエラーを表示してくれないようです。

なので以下のように設定し直したらちゃんと表示されました。
ini_set('display_errors', 'On');
error_reporting(6143);

【追記】
ビット値で入力するのは.htaccessなどらしいです。
php内に書いてもやはり出てこないです。
おそくらfatalエラーとかで実行完了してないからかなと。。。

2009年11月9日月曜日

携帯ブラウザのSSL対応について [携帯]

安いプランのレンタルサーバで携帯のお問い合わせフォームを作る仕事において、ちょっと古いの機種でアクセスすると「不正な証明書です」みたいなエラーが出ていたのでいろいろ調べてみた。
対応してないのならしかたがないですが結構有名な認証局のだったので驚きました。

参考:各認証局
http://www.au.kddi.com/ezfactory/tec/spec/ssl.html
http://www.nttdocomo.co.jp/service/imode/make/content/ssl/spec/#p06
http://creation.mb.softbank.jp/web/web_ssl.html

2009年10月20日火曜日

postfixにてvirtual_aliasの設定を反映させる [メール]

postfixにてvirtual_aliasの設定を反映させる

・main.cfにてvirtual_alias_domainsを追加/編集
・virtual_aliasにアカウント追加
・aliasesに転送先を追加

/usr/sbin/postmap /etc/postfix/virtual_alias
/usr/bin/newaliases
/usr/sbin/postfix reload

全部必要か分からないけど結果オーライ

2009年6月2日火曜日

phpのmkdirについて [PHP]

第2引数でパーミッションを指定出来るらしいのでデフォルト設定を信じるか、手動で0777と設定しても0755になったりする。
それはどうやらumaskの影響を受けて、例えばumaskの設定が0022になってると、0777-0022で0755になる(ってことだと思う・・・)。

> また、モードは、現在設定されている umask の影響も受けます。 umask を変更するには umask() を使用します。


umaskの設定を変更すると他に影響が出そうなので、いつも通りやった。
mkdir('aaaa');
chmod('aaaa', 0777);

2009年5月28日木曜日

本日の.htaccess deny from all で apacheのTestPageが表示されてしまう [APACHE]

久々の更新。

/etc/httpd/conf.d/welcome.confにある以下の内容が影響してるよう。

Options -Indexes
ErrorDocument 403 /error/noindex.html

コメントアウトでapacheを再起動すればなおるようだけど今日は疲れたのでまた次回に。

2009年5月2日土曜日

2009年4月9日木曜日

macでmd5値をもとめる [mac]

ターミナルで、以下のコマンド。
md5 -qs hogehoge

僕の開発環境はmacなのです。

2009年3月6日金曜日

oracleの簡易バックアップ(export)の取り方 [SQL]

メモ
exp ユーザ名/パスワード@スキーマ buffer=102400 tables=テーブル名 file=ファイル名
impで入れる

Xdebug PHPデバッグツール [PHP]

PHP歴も1年半くらいになって、始めたときからすでにPHP5ってリリースされたみたいだけど、最近やっと、オブジェクト志向ってほどじゃないけど、MVCを意識して設計しclassを作ってみました。

プログラムを書いていて一番不安なのは、確かに動くけどこれって効率的なの?ってところです。
そういうことって大事だと思う。

で、PHPのデバッグツール(PHPのモジュール?)というのに関する記事を見付けました。
[Xdebug]
[PHPプロファイリング: Xdebug(Xdebug2) + WinCacheGrind]
PECL::package::Xdebug

全然知らなかったので、ざっとしか調べてないのですが、基本的にデバッグツールのようなので、「スクリプトの解析をして負荷の高い箇所を発見する」みたいな機能はなさそうです。
そういう機能があるモジュールとかほんと使ってみたいです。

ふむふむとデバッグをしてくれるので負荷が高くなるのか、本番稼働中のサーバではOFFにしたほうがいいみたいです。
開発環境と本番環境が別の場合やリリース前の開発段階で使えると思ったので今度いれてみようと思います。

2009年2月17日火曜日

unixコマンドでファイル名を一括置換 [UNIX]



とあるディレクトリのgifファイルをjpgファイルに拡張子を置換する。
for nm in ./*.gif; do mv $nm ${nm%.gif}.jpg; done
for文でmvコマンドをまわす。

ImageMagickインストール cannot find config.m4 [PHP]

忙しくてあまり寝てない。
腰痛が再発してくしゃみをするとビリンッて痛い。
これってヘルニアかな。
-------------------------------------

ImageMagaickのインストール。
http://www.imagemagick.org/script/download.php
tar.zipを落として解凍してインストールしようとしたらエラー

# phpize
Cannot find config.m4.
Make sure that you run '/usr/bin/phpize' in the top level source directory of the module

# /usr/bin/phpize
Cannot find config.m4.
Make sure that you run '/usr/bin/phpize' in the top level source directory of the module

# pecl install imagick
downloading imagick-2.2.2.tgz ...
Starting to download imagick-2.2.2.tgz (77,212 bytes)
..................done: 77,212 bytes
11 source files, building
〜略〜
aclocal.m4:4612: _LT_AC_TAGCONFIG is expanded from...
ERROR: `phpize' failed

どうやらphpizeがキーのようだ

php-develをいれるとついてくるという情報が結構あるが、php4用のようだし、そもそもphpizeは入ってる。
# yum list | grep php
php-devel.x86_64 4.3.9-3.22.12 installed

なので、config.m4.がないのが問題なのかな。

再度解凍してみたりGoogle先生に聞いてみたりしたけど、似たような話しか出てこない。。



試しに、http://pecl.php.net/package/imagickから最新版をDL→解凍してみた。
そしたら、、、
「config.m4」発見!!

# phpize
# ./configure
# make
# make install
であっさり解決。

あとはphp.iniに
・extension_dir=/インストールされたディレクトリ/
・extension=imagick.so
を追加してapache再起動。
phpinfoを見てみると、imagickの項が追加されてた!

実に2日間の作業。
お疲れ、オレ。

2009年2月8日日曜日

WEBからrsyncするツールつくり [APACHE] [PHP] [UNIX]

テストサーバから本番サーバへ反映させるのにrsnycを使ってやることにしました。
ただし、毎回毎回コマンドを叩くのもアレなのでwebで出来るようにphp経由でコマンドを叩くことにしました。
※php自体はテスト側に置いてあります。


【SSH認証でやってみようとする】
まずはsshの鍵の受け渡しをすることでパスワードなしでログイン出来るようにする。

コマンドライン経由でrsyncのテストをしたところ、本番サーバへのログインパスワードをきかれたので、なしで出来るようにしようと思いました。
テスト側でパスワードなしで公開鍵/秘密鍵を作って公開鍵を本番サーバに送ります。
互いのユーザ名は同じで、noocooとします。

[noocoo]$ ssh-keygen -t rsa
でenter三回くらい。パスワードは空で。

で、本番側の所定ユーザのauthorized_keysに鍵の内容を追加。
[noocoo]$ scp ./id_rsa.pub noocoo@honban_hostname:/home/noocoo/.ssh/authorized_keys

これでうまくいくはず、と思ったけど、まだパスワードを聞かれる。
なので、今度は本番側のsshdの設定をチェック。

[noocoo]$ su -
[root]# cd /etc/ssh
[root]# vi sshd_config
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
RSAAuthentication yes
※上記3つのコメントアウトを外しsshdを再起動。

[root]# service sshd restart
sshd を停止中: [ OK ]
sshd を起動中: [ OK ]

これでパスワードなしでsshログイン出来ました。



次に、php側にrsyncスクリプトを作って実行したところエラーをはきます。
Could not create directory '/.ssh'

色々調べたら実行ユーザが違う(nobodyとかapacheとか?)ということなので、/.sshを作成してnoocooの鍵を置いてみたりしたけど駄目。
nobodyとapacheで鍵を作ろうかと思ったけど、そもそもログイン出来るユーザじゃないみたいで、そこら辺調べるのも面倒になってきて方針を変えました。

【rsh-serverを使ってみる】
結論、出来た。さらっと出来たのでもうメモみたいな感じで。
[root]# chkconfig --list
[root]# up2date rsh-server
[root]# chkconfig rsh on
[root]# chkconfig rsync on
[root]# vi /etc/hosts.equiv
test nobody

これで終わり。

ssh認証を使ってどうしてもやりたいなぁと思っていたので、どうやって鍵を渡してやろうかってところでずーと悩んでました。


2009年1月21日水曜日

立ち位置 [blogger]

現在地はどこだ。
ここから何が見えるのか。
ここからどこに行けるのか。
今、何ができるのか。

って書いてある。