Of course, using header() they could still see the absolute path on your server.
If you truly want to restrict this file, put it in a directory with a .htaccess file like so:
Order allow,deny
Deny from all
Then, link to a PHP script that checks if they are allowed to download the file. If so, output the file using [man]readfile/man (or, for less memory consumption, fopen() and fread()) after outputting the appropriate headers (e.g. Content-Disposition).