if my 403 file is at /bonkerslocation/403.php would it be:
RewriteRule ^bonkerslocation/403\.php - [L]
Yes. You can also simply leave off the opening anchor and give only the filename. But it's always good to give the full path, when possible, because then the server can get out of there all the sooner. This line goes before all other RewriteRules-- contrary to the ordinary rule ordering-- because the point is to intercept internal requests for the error document. Otherwise they'd be locked out along with everything else.
client denied by server configuration
Unfortunately that's all error logs ever say. "They got a 403 because you told them they're not allowed." If you have RewriteLogs-- on shared hosting, you don't-- you'll get more information if-and-only-if the 403 was issued by mod_rewrite. Otherwise it's up to you to squint at the ErrorLog entry and see if you can figure out which aspect of the request triggered a rule.
maybe "/error" is reserved or defaulted on the server or something
On shared hosting, there's generally a default name for error documents, such as "missing.html" and "forbidden.html". At the server level, this means two things: there's a server-wide set of directives that say things like
ErrorDocument 403 forbidden.html
AND there's a corresponding <Files> envelope that says
<Files "forbidden.html">
Order Deny,Allow
Allow from all
</Files>
All the site owner sees is that their "forbidden.html" magically works. If you haven't got this page, and someone gets locked out, the error log will say two things. First it will record the "client denied by server configuration" line, and then it will record that it couldn't find the specified error page.
There may be a supplementary line in the config file that says something like
:: making this up off the top of my head ::
RewriteCond %{THE_REQUEST} error\.html
RewriteRule ^error\.html - [G]
This prevents the server from showing the "error.html" page to people who ask for it by name. But I doubt the rule is really expressed this way, because it would only work if the destination site doesn't have RewriteRules of its own.
Matter of fact: Around the middle of last year, the bingbot started asking for one directory-specific error document by name. I've never found out how it learned of its existence; I didn't even know it was happening until many months later when I moved sites. Ordinarily, you deal with this kind of thing by serving up a 410. Here I couldn't-- because it was the 410 document itself that was involved! So now I've got a line that says
RewriteCond %{THE_REQUEST} ebooks/gone\.html
RewriteRule ^ebooks/gone\.html - [R=404,L]
Normally of course you don't need to code an explicit 404. Here I had to, because the file actually does exist-- I just don't want search engines to know about it. Yes, it's really "R=404". This is a quirk shared by mod_rewrite and mod_alias. You can attach any number after the "R=" or "Redirect"; it doesn't have to be in the 3xx range.
Edit: Heh, this is funny. My mousing hand must have slipped while composing this post, because there's now a search-engine tab open containing the words 'maybe "/error" is reserved or defaulted on the server or something, I' (was that a single line in your post?). And there are 78 million replies (really) so clearly you are not the first person to wonder.