The first thing I've done is to create an obvious path with flagstones. Most people will just instinctively stay where it's flat and dry. I've been to gardens where I really don't know where to stand, and it just makes me nervous. If you haven't designed a place for visitors, you have made a mistake, and shouldn't blame them if they walk in places where only the gardener should walk, stepping on small plants, kicking watering heads, etc. It's your fault.
I've also placed some large and very obvious rocks around the perimeter. But not flat rocks, or edging. Flat rocks look like stepping stones, and edging encourages the twelve-year-old in everyone, making people want to stand, and balance. Then slip off, into the garden. So the rocks on the edge have points on the top, they're not flat. Not only do they look great, they discourage standing on them.
I also have some wickedly sharp plants that are planted several feet in the garden. Yeah, agaves. This should be a very clear message to keep out! I've had visitors dumb enough to step into the garden and get gouged, but luckily, blood cleans off easily. My only reaction is, *wow, I wouldn't have done that!* By the way, these sharp plants are nowhere near the edges - someone has to be dumb enough to go strolling up into the garden to get anywhere near them. That agave back there, about two feet back from the path, has some razor sharp needles. It says, *keep out*!
Yes, I want people to look at the garden, but no, I don't want them walking inside of it. If you're seeing people do that, and it's annoying you, it's time to take a critical look at your design. No, you won't keep the real idiots out, but you can send a clear, and beautiful, message of where you want the visitors to be.