2008年11月9日日曜日

[雑記]Zend Framework+YUI+smarty

最近出向先が変わってちょっと忙しいのですが



今の仕事内容は表題の環境のWEB業務アプリ開発です。



YUIでAJAXバリバリのUI組んだり

ZendのFWでMVCのVへのデータの受け渡しを簡素化したりと

なかなか面白い案件で、気づいたら夜9時回ってたーなんて事もざらw



ここんところ休日鯖構築も止まってて、自主的な技術勉強もする意欲がなかったんですが

ほかのFWやらUIの勉強もしたいなーと思う今日この頃。。。

2008年9月30日火曜日

sudo

基本的に構築はrootだけでやってたんですが、実務で結構構築を任される事が

多くなってきたのでsudoを使ってみようかな・・と



それのメモ



#visudo

sudoの設定ファイルを書き換える。

標準では

/etc/sudoers (FreeBSD では /usr/local/etc/sudoers)

に設定ファイルは配置されているのだが、それを直接viなどで編集してはいけないらしい。



visudoを実行すると(rootで)コメントがずらずらと出てくる。

※visudoの操作はviとはちょっと異なる

    コマンド実行時に下にヘルプが出るので、保存、終了はそれを参考に

    Ctrl+X:終了 Ctrl+O:保存




編集箇所は一番下の行



# User privilege specification

root    ALL=(ALL) ALL



の部分に

[ユーザー名] ホスト=(権限ユーザー) コマンド

の書式で追記していけば良いみたい

2008年9月27日土曜日

Swapの設定について

Webmin導入時でもあったけどハングアップを防止する設定が出来るみたい。



以下takaichi501011さんのtaka_lifeブログからの記事を参照しています。

http://ameblo.jp/takaichi501011/entry-10126486962.html



スワップ領域の追加方法



①任意の場所にディレクトリ作成

#mkdir /mnt/swap

#cd /mnt/swap



②ddコマンドでswapファイルを作成

#dd if=/dev/zero of=swap bs=1024 count=任意のサイズ





③スワップ領域を拡張する

#/sbin/mkswap swap(デバイス)





④スワップ領域を有効にする

#/sbin/swapon swap(デバイス)

※無効にする際は/sbin/swapoff デバイス



⑤再起動後にこのままでは消えてしまうのでrc.localファイルに

起動後に有効にするコマンドを記述

#vi /etc/rc.local



/sbin/swapon swap(デバイス)を追加



《終了》







メモリオーバーコミット設定

※swap使用量が100%に達しない為の設定です。ハングアップを防ぐため



①/etc/sysctl.confを編集します。

#vi /etc/sysctl.conf

#/sbin/sysctl -p



下記を追加

vm.overcommit_ratio = 99

vm.overcommit_memory = 2



overcommit_ratioは物理メモリの割合を指定します。

99だと99%使用して1%は常に空けれるようにしておくということになります。

overcommit_memoryを2にするとメモリオーバーコミットを許さなくなります。



swappinessの設定

swappnessは1~100まで設定できて大きいほどSwapしまくるみたい。



①/etc/sysctl.confを編集します。

#vi /etc/sysctl.conf

下記を追加

デフォルトは60なので50に設定

vm.swappiness = 50



#/sbin/sysctl -p




overcommit_memory 2

だと

webminとapacheを同時起動するとどちらかがメモリ不足で落ちてしまう。



ので

overcommit_memory 1とした。





今のところ、多少もっさりだが共存出来ているよう at2008.10.04

Xのアンインストール

http://singlese.blog.shinobi.jp/Entry/60/

http://singlese.blog.shinobi.jp/Entry/65/




上記2つの理由からGUI環境をアンインストールすることにした。



インストール済みパッケージリストの取得

#dpkg -l > pkg.list



リストを眺めてXに関係ありそうなもの(何てアバウトなw)を削除



apt-get remove icewm

apt-get remove apt-spy

apt-get remove icewm-common

apt-get remove kdm

apt-get remove w3m

apt-get remove x-window-system

apt-get remove x-window-system-core

apt-get remove x11-common

apt-get remove vnc-common



ランレベルの設定

vi /etc/inittab



id:2:initdefault:

に変更

2008年9月26日金曜日

費用対効果

こないだまで頂いたマシンをWEBサーバーにして公開するゾ!っと意気込んでいたのですが



ふと

・公開するならずっとマシンの電源入れっぱなしにしなきゃいけないんだよな・・・

・電気代どれくらいかかるんかな

・ってか今でも結構切り詰めてるのに、コンスタントに出て行く金はなるべく抑えないとと決めたばかりじゃないか!w

・どれどれ、調べてみるか



という流れで自宅サーバーを公開する場合の電気代を調べてみたのですが





http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=19789&forum=3&16




結構するもんですねぃ・・・

ちょっと家計にやさしくないので、自宅WEBサーバーは諦めモードですorz

これじゃあ安価な共用のレンタルサーバー借りたほうが安い・・・

��仕事の予習や環境構築の練習、自分専用のWEBアプリは作るかもしれないけど)

2008年9月24日水曜日

webmin導入

いちいちSSHで電源管理をするのもうざったいので、以前仕事で使っていたwebminを導入してみる。



まずはダウンロード

wget http://prdownloads.sourceforge.net/webadmin/webmin_1.430_all.deb

次にdebファイルのインストール

dpkg -i webmin_1.430_all.deb



ライブラリ不足のため、エラーが出る。

apt-get -f install



再度インストールを試みるも途中でハングアップしてしまった。

スペック不足か・・・



と思いきや


SWAP設定をしたらなんとかインストール出来た。



で次はポートの開放

iptables -A INPUT -p tcp --dport 10000 -j ACCEPT

設定保存

/etc/init.d/iptables save

再起動

service iptables restart



※ソースからインストールする場合

・必要なパッケージのインストール

apt-get install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl libmd5-perl



・ソースダウンロード

http://jp.webmin.com/download

ここから最新版をダウンロード



・解凍とセットアップ

tar zxvf webmin-*

cd webmin-*

./setup.sh





[php] file_get_contentsでのUA詐称

file_get_contentsでのアクセス時にUserAgentを変更する方法。



php.ini の user_agent を設定することで file_get_contents などのアクセス時のUserAgentを変更できるようですね。

��デフォルトは PHP という文字列とバージョンがUserAgentとして設定されています)



次のように ini_set 関数でも設定が可能のようです。

ini_set('user_agent', 'User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)');