I've been doing back-side coding for the last 2-3 years. Mostly, I've built small to medium sized websites on shared hosting packages. As such, I have rarely had shell access or the need or ability to manipulate the server. Setting up the mod-rewrites, 404 redirects, etc.. in the htacces files is as far as I go.
This is fine until I run into the Do-It-Yourself hosters. Companies that have IT departments or clients that are engineers and figure they can set up the hosting themselves. Invariably, problems pop up that can be extremely time-consuming to fix. They often turn to me for advise I don't have.
For example, on one recent host I worked with, the mysql server rejected the comment syntax in the base sql I load in and it did not support using the current time as the default on a timestamp field. Numerous other problems popped up along the way.
Any suggestions on how to deal with these types of situations? Maybe I should find a hosting partner to work with. Establish hosting criteria for which versions and modules need to be installed.
Purchase your own server from a reputable company and configure it as you see fit.
MySQL did change time functions between v4 and 5 so these problems come up once in awhile. Unless you're going to keep up with version change logs, every good package has them (php, python, perl, mysql, apache, etc.) then you should pick a host you know well and only deal with customers who will use them. GL
Maybe I should find a hosting partner to work with. Establish hosting criteria for which versions and modules need to be installed.
That's a good idea. However, some businesses will want to run hosting of their own for whatever reasons.
If they insist, then you could make the specs for a properly configured setup part of your work agreement. If they do it, great -- if not, then you can reserve the right to spend extra time on the project.
If you can explain to them that a poor configuration on their end will cost them x hours in mess-about time, I'd hope they'd understand.
A small VPS hosting account shouldn't cost you much more than the shared plans, yet gives you the same kind of access you get to a full server. It's worth learning how to create, configure and maintain the environment your code runs in. A little experience will go a long way to getting your stuff working on your clients' hosting setups.
I believe reseller account with hands-on support should be more then enough for you.