I would suggest File::Find, readdir, or failing on a function such as open.
To explain a little:
If you use readdir, you could get a list of all the files and do a regex match to see if the file your looking for exists. If not, redirect the user...as you suggested.
You could even do something like:
#pseudo code
open(FILE,"filename") ||
call_function_that_redirects_user_as_you_suggested.
#end pseudo code
HTH,
Chris