One of the really tried and true ways is to limit posting capabilities to a bare minimum, and limiting sub-forum access to a “New Users” section until people can show they can be promoted into the wider fora by following the rules. That’s real harsh, but it actually works in many software support boards.
Edited to add: keeping them in the New User forum for a period of time after joining compels them to search the forums for their initial question. It’s not punitive, it’s reinforcing learned behavior.