Q:

Redirect 301 in .htaccess causes 500 server error (Redirect to non-URL)

have such kind of error. 
When adding Redirect 301 rule to .htaccess file like:
Redirect 301 "/page1.html" "/dir1/"

My site fails with 500 server error and in apache error log this error appears:
[Wed Mar 16 11:08:52 2011] [alert] [client 127.0.0.1] /home/htdocs/site.com/www/.htaccess: Redirect to non-URL

Mod rewrite is installed, also tried to provide urls without quotes. 
On production server this .htaccess works fine, but on local causes troubles
Any ideas, please)

This rule works
Redirect 301 "/page1.html" "http://www.site.com/dir1/"

but I need a way to supply relative paths instead of full urls (production server works that  way)

A:

Changed all Redirect 301 rules to:
RewriteRule ^/page1.html$ /dir1/page.html [R=301,L]

now working.  But how does it work on production?