Ok,
ErrorDocument not allowed here usually means an override problem...
This means something in the server's configurations is overriding what you are trying to do...
You can using this in your htaccess, instead:
Code:
<Directory "/var/www/html/temp/book/">
AllowOverride All
ErrorDocument 404 /error.php?code=404
</Directory>
This basically tells the server to take it's configurations and lose them, because you are in charge (insert evil laugh). (You can change the first Directory to just be
<Directory /> to globally override the settings.)
Or if you have access to
access.conf on apache, you can search for
AllowOverride None and change it to
AllowOverride All (but note that you should only do this if NONE of your htaccess is working no matter what you do).
Remember that you are messing with server settings, you could be compromising configurations on the box, so you might want to get permission before doing this, or just ask the admin to change the access.conf to override all.