ソフトウェア開発者の日常

こだわりなく書きたいことを書いていきます。

それで本当に大丈夫なのか?

心配だったので、修正してもらいました。

f:id:AJYA:20130617124234j:plain

 

 以前、ファイルを上書きしてしまうトラブルがあったので、気にするようにしています。

ファイルを上書きしてしまうトラブル - ソフトウェア開発者の日常

過去のプログラムを一部修正して利用する機会があり、ファイルをアップロードする機能がありました。

ファイル名をどのようにつけているのか確認したところ、ファイルアップロード元のIPアドレスと、年から秒までの時刻を使っていました。

 

一見、ファイルアップロード元のIPアドレスを使っていれば、大丈夫なように見えます。

個人であれば、プロバイダからグローバルIPアドレスを個別に割り振られているはずなので、一意になります。

 

会社になると、外部のネットワークとつながっている機器にグローバルIPアドレスが割り振られ、個人のパソコンにはローカルIPアドレスが割り振られていることが多いでしょう。

そのため、プログラムが動作しているサーバーに、会社から2台同時にアクセスされた場合、同じグローバルIPアドレスになります。

今のプログラムのままで、同じ会社から別々のパソコンで秒まで同じタイミングでファイルをアップロードされてしまいます。


対処として、セッションIDを使うようにしました。