Rehash has nothing to do with it. Rehash is only for things that use the C shell (which rc scripts do not). The only time you have to use it is when you install software and your shell needs to scan your path again (rehash).
The short answer is "Run `/usr/local/etc/rc.d/whatever.sh rcvar` and set the correct variables in rc.conf"
Things about the FreeBSD service starting at boot time have changed a little bit in the recent past. Basically, anything in /usr/local/etc/rc.d with an extention of '.sh' and set executable will be run at boot time.
The thing that has changed is that that used to be all that was required. It was a pain to tell the new users how to do all that though, so they adopted something closer to Net and Open's solution of installing all the scripts so that they would be executed at startup, but they check rc.conf to see if they should actualy activate the service that they're in charge of.
See the handbook
for more information.