ファイルテスト演算子の挙動

# $filepathには正しいファイルのパスが入っている。
if(-f $filepath) { print("OK"); } else { print("NG"); }
if(-r $filepath) { print("OK"); } else { print("NG"); } # 常にNG

うちの環境ではperlのファイルテスト演算子のうち「-r」が、ApacheからCGIPerlを使った時だけうまく動きません。
コマンドプロントから実行するとうまくいくのに。おなじperlコマンドのはずなのに。
うちの環境だけなのでしょうか?
[Apache + cygwin + perl]