It is important to be onsite - but as the sales person and not as the "techie" doing the work. So, don't be doing the work while onsite. Instead, be meeting with the top bosses giving progress reports and asking what other pain points they have.
While that's the ideal, you're also describing projects that are either small or independent. There have been many times where I wished that I could even do a part of the project offsite but couldn't.
Duplicating required databases (even a sample) and their environments was unthinkable. Having access to code libraries or repositories to work on the code was just as challenging, not to mention network access and security. Many of these large systems just were not built for independent development or access outside the building. [Not even addressing the cost of the tools - Who's going to pay for an offsite copy, you?]
Now granted, that was in the past but imagine if labor costs went to near zero in some far away land, half way around the world. If such a place existed, companies might rethink their architecture, network access and even security to tap into such cheap labor. Ah, that will never happen since I'm not allowed to even work on these systems from down the street at a remote office even if all these issues could be worked out.
No worries, I'll just keep going in since I have such a secure job.
[At companies that haven't off-shored yet, these are all still relevant issues.]