2005-08-18(木)
謎・・・
とあるシステムで、どうしてもキャッシュがクリアできない問題に悩み中。
画像やテキストデータを投稿して、テキストデータはDBに、画像ファイルはデータをDBに登録した際のIDをファイル名にしてサーバ内に保存している。で、記事を編集する際には、テキストデータをDBから呼び出してフォームに表示して、画像もサムネイル画像を表示。で、画像は縦で撮影したものを横向きのままアップした場合のために回転が出来るようにしたんだけど、それはフォーム自体のSubmitと別にボタンをつけた。ラジオボタンで「時計回りで90度」か「反時計回りで90度」を選んで、そのボタンを押すと、その場でサーバ上の画像ファイルを回転するようにした。(ちなみに回転の処理にはImageMagickを使用)
で、回転の処理後にそのフォームを再読み込みする処理も入れた。再読み込みすれば回転後の画像のサムネイルが表示される。
初めは「回転の処理が上手くいってないのか?!」と思い、サーバ内の画像ファイルを確認したら、ちゃんと回転してた。で、ページをリロードしてみたら、元の画像から180度回転したサムネイルが表示された・・・。1度目でちゃんと90度回転していたものが、リロードすることによって再度データがSubmitされて、また90度回転してるっぽい。
「こりゃ、キャッシュの仕業じゃな。」と思い、フォームのHTMLにMETAタグで”no-cache”を入れたけど、変わらず。CGIのほうから、HTTPヘッダで”no-cache”を吐き出すようにしたけど、やっぱり変わらず・・・。
いろいろ調べたら、
とりあえずは、「この画面上での表示は変わってないけど、サーバ上ではちゃんと変更されてるから、リロードしないでね」というような内容の注意書きを表示しておくことにした。(とりあえずはそれでいい、って言われたんだもーん。)
ネットでいろいろ調べてる最中に、全く同じ問題に直面している人が、どこぞのCGI質問掲示板で質問しているのを発見したけど、誰もレスしてなかった・・・。あの人は解決したんだろうか。
解決策をご存知の方がいらっしゃいましたら、ご教授くださーい!
2005-08-09(火)
SEまたはプログラマ急募!!!!!!!!!!
↑このエクスクラメンション(!マーク)の数をご覧いただけば分かるように(分かるのか?)、ホントに急ぎの募集です。
お盆明けから、でっかいシステム開発の案件が入ります。かなりでっかいのに、納期が9月中旬です。でもテストとか修正もあるんで、9月末まではかかると思います。さすがに「うちの相棒×1人+私が部分的にお手伝い」では無理なので、知り合いの凄腕SE(フリーで活動中)にもお願いする予定ですが、たぶんそれでもまだ人手が足りないと思います。
というわけで、お盆明けから9月末くらいまで、お手伝いしていただける方を探しております。条件は以下のとおりです。条件を満たしている方で「我こそは!」と思う方、「かわいそうだから手伝ってあげよう」という方、「ヒマだから手伝ってあげよう」という方、または「自分は無理だけど友人知人に該当者がいるぜ!」という方はinfo@n-function.comまでご連絡ください。
■必須条件■
・大分市の外れのほうの僻地に通える方
・Perl、PHPが使いこなせる方
・DB(MySQL、PostgreSQL、Oracleなど)が使いこなせる方
・お盆明けから9月末くらいまで拘束されても大丈夫な方
■必須ではないけど、満たしていると嬉しい条件■
・普通に人と会話や意思疎通が出来る方
・強靭な体力と精神力の持ち主
以上、よろしくお願いしまーす。
2005-07-25(月)
大忙し。
先々週くらいから急に、仕事の打診やら見積り依頼やらが立て続けに来た。で、先週には受注、仮受注が続々と・・・。3日前(21日)には、とある会社に大きめの仕事のプレゼンに行ったら、その場で受注が決定。相棒と「いやぁ、よかったね~」と言いながら事務所に戻ったら、15分おきに3本の電話。全部、仕事の依頼。おかげで、相棒も私もお盆くらいまではそれぞれ複数の仕事を抱えて大忙しです。こんなにたくさん仕事を頂けるのは本当にありがたいことなんだけど、どうしてこんなに集中して来るんだろう・・・。
さらに、金曜には相棒が某会社に呼ばれて行ったら、かなりデカい仕事の打診だった。これが長期的な話で、人も雇わないといけないので、予定より早く法人化しないといけなくなりそう。
なんだか大きくて良さげな波が来たっぽいぞ。この波を上手くつかまえなきゃ。
2005-06-16(木)
Fedora Core3 でサーバ構築 (その3)
その2からの続き。アップするの忘れてたw」w」w」。
(7)PerlはFedoraのインストール時に一緒にインストールしたので、次にPostgreSQLのインストール。postgreSQL公式サイトからダウンロードして、/usr/local/srcに保存。
先に、postgresユーザーを作成。
# useradd postgres
で、PostgreSQLの展開と/usr/local/pgsqlの作成とオーナーの変更。
# cd /usr/local/src/
# tar -zxvf postgresql-8.0.2.tar.gz
# chown -R postgres.postgres /usr/local/src/postgresql-8.0.2/
# mkdir /usr/local/pgsql
# chown -R postgres.postgres /usr/local/pgsql/
/etc/profile に↓を追加する。
export POSTGRES_HOME=/usr/local/pgsql
export PGLIB=$POSTGRES_HOME/lib
export PGDATA=$POSTGRES_HOME/data
export MANPATH="$MANPATH":POSTGRES_HOME/man
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"$PGLIB"
postgresユーザーにてインストール&起動。
# su - postgres
$ cd /usr/local/src/postgresql-8.0.2/
$ ./configure
$ make all
$ make check
$ make install
$ initdb --encoding=EUC_JP --no-locale
$ pg_ctl -w start
$ psql -l
で、ユーザーとDB作成。
$ createuser xxxxxx
$ su - xxxxxx
$ createdb xxxxxx
自動起動の設定。/etc/rc.d/rc.localに↓を追記。
あと、DBIとDBD::Pgもインストール。
# cd /usr/local/src/
# tar -zxvf DBI-1.48.tar.gz
# cd DBI-1.48
# perl Makefile.PL
# make
# make test
# make install
# tar -zxvf DBD-Pg-1.41.tar.gz
# cd DBD-Pg-1.41/
# perl Makefile.PL
# make
# make test
# make install
DB、DBI、DBD::Pgの動きを確認。
以上で全て終了。
2005-06-05(日)
Fedora Core3 でサーバ構築 (その2)
その1からの続き。
(5)このサーバにはPerl+PostgreSQLで作った社内用システムを入れるので、そのための準備。まずapacheを入れる。apacheもRPMでインストール。その後、httpd.confを編集。
# vi /etc/httpd/conf/httpd.conf
編集内容は以下の通り。
↑ドキュメントルートを変更(xxxxxの部分は秘密)
Options Includes ExecCGI FollowSymLinks
↑SSI、CGI、シンボリックリンクの許可
AllowOverride All
↑.htaccessの許可
DirectoryIndex index.cgi index.html index.htm index.php
↑インデックスにindex.cgi 、index.htm、index.phpを追加
ScriptAlias /cgi-bin/ "/home/xxxxx/"
<Directory "/home/xxxxx">
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
</Directory>
↑スクリプトエイリアスの設定
AddDefaultCharset Off
↑デフォルトの文字コードを無効
AddCharset shift_jis .sjis
↑CharsetにShiftJISを追加
AddHandler cgi-script .cgi .pl
↑CGI実行の許可(.plを追加)
んで、Apacheの起動&自動起動設定。
# /etc/rc.d/init.d/httpd start
# chkconfig httpd on
テストファイルを置いて表示の確認。OK。
(6)次にFTPを入れる。FedoraのインストールCDにvsftpdが入ってたので、これをRPMインストール。
Anonymous接続を拒否する設定をするため、vsftpd.confを開く。
# vi /etc/vsftpd/vsftpd.conf
で、 anonymous_enable=NO に変更。
WindowsからFTPソフトでログインテスト。Anonymous接続が拒否されるかどうかも確認。
2005-05-31(火)
Fedora Core3 でサーバ構築 (その1)
お客さんとこの社内サーバ用にDELLの『PowerEdge SC420』を買って、RedHatを入れようと思ったら、HDDを認識しない・・・。で、あれこれ調べてみたら、SC420ではSATAのRAID構成だとRedHatは使えないらしいということが判明。買うときに調べるべきでした・・・。_| ̄|○
で、結局FreeBSDやVineLinuxもNG。「SCSIに変えるか、Windowsサーバにするか・・・(泣)」と諦めかけていたら、Fedora Core3ならOKとの情報が!で、Fedora Core3をインストールしてみたら、あっさりインストール出来たよぉぉぉっ!(嬉泣)
ってなわけで、Fedora Core3インストールに関しての覚書。
(1)Fedora Core3をCDからグラフィカルモードでインストール。言語・キーボードはもちろん「Japanese」を選択、インストールタイプは「カスタム」を選択。パーティションも手動で行う。ブートローダの設定のところは特に変更せず、そのまま次へ。ネットワークの設定では、とりあえずうちの事務所のLANに組み込むんでいろいろテストがせなあかんので、うちのLAN環境の設定で。ファイアウォールは無効に。タイムゾーン、rootパスワードの設定後、パッケージの設定。不要なものは全部外した。
(2)で、インストール完了後、初期設定。セットアップ完了したら、いざログイン。せっかくのGUIですが、コマンド操作のほうが慣れているので、[アプリケーション]→[システムツール]→[GNOME端末]を起動し、ここから先はコマンドにて。
(3)まずは、SSH。ありがたいことにFedora Core3ではインストール時にOpenSSHが一緒にインストールされてデーモンで動いているので、ここではWindowsマシンからSSHでログインできるかの確認のみ。(ちなみにWindowsでの端末はTeratermを愛用してます。)
(4)次に、ファイルサーバとして使用するのでSambaを入れる。RPMにてインストール。/exportの下に「share」というフルアクセスの共有フォルダの作成。
# mkdir /export/share
# chmod 777 /export/share
で、smb.confを編集。編集箇所は↓のとおり。
dos charset = CP932
display charset = UTF-8
workgroup = Workgroup
server string = share
security = SHARE
[public]
path = /export/share
read only = No
guest only = Yes
guest ok = Yes
で、Sambaを起動。さらに自動起動の設定。
# /etc/rc.d/init.d/smb start
# chkconfig smb on
共有フォルダがちゃんと利用できるか、Windowsから確認。
お客さん側でユーザーの管理などをしてもらえるように、WebブラウザでSambaの設定が出来る「SWAT」もインストール。こりゃ便利だわ。
2005-04-08(金)
仕事メモ
●今の会社の仕事●
・K社のサーバ構築、システム修正
・レンタルサーバのサーバ登録、DNS登録、ドメイン申請手順の引継ぎ書を作成
・社内雑務の引継ぎ
・客先へあいさつ回り
・今週末は最後のトラブル当番だよ
●クレエの仕事●
・花屋のサイト完成させる
・自社サイトも作り上げろ
・SK社にデータをもらう
・HA校で生徒さんから質問のあったコラージュ印刷の件をK先生に確認(4/17の授業までに)
会社に出るのも、実質あと8日。がんばろーっと。

