My mare was headshy too, and I understand not wanting to scare them off. However, it IS disrespectful, and dangerous. (What would happen if they bumped into an elderly person, young child, or someone physically disabled in that manner???) If your horse is sensitive, a harsh NO or BACK OFF might work just fine. With my mare, I combined that with a strong push away in place of a slap, since she had issues being headshy as well. With her she stopped being headshy after I had her long enough to build up some trust. I make her wait and don't let her rub on me. When she is backed off and being respectful, I scratch her allllll over and tell her what a good girl she is. Once I have all her gear off and have my hands on her, she's allowed to lean into my hands and rub in whatever direction she's itchy in. The second she tries to rub on my body, we're done. She's pretty patient and well-behaved with it now.
A horse is the projection of peoples' views about themselves--strong, powerful, beautiful--and it has the capability of giving us escape from our mundane existance.