It is quite likely that you will want (need?) to tweak certain PHP settings on Dreamhost (by running your own custom PHP, or running your own php.ini against a private instance of PHP.cgi) in order to get the various settings into “optimal” configuration for this combination of packages.
Dreamhost PHP now runs only as cgi; this could impact certain functions that rely upon mod_php to operate properly.
On Dreamhost, using the “pre-compiled” versions of PHP, you may run either PHP 4.4.2 or php 5 (I forget the sub-version), and the default settings for various php setting differ between the two versions at Dreamhost.
Just a friendly word of caution: The continually evolving nature of all these packages, and the the fact that they are continually subjected to exploit attempts, makes it highly likely you will continue to have to upgrade each of these packages fairly regularly in order to operate them safely. As you have found with your current host, this can be problematic if you have to substantially “tweak” the application to run under your servers’ php settings.
Given the many settings that can be involved, and the way these packages evolve, I don’t think anyone here can authoritatively assure you that each of these three packages, and their next releases, will work together, with full “reccomended optimal” settings, under Dreamhost’s php.cgi (running under suexec - as your own user), without the possibility (probability?) of you having to customize either the php.cgi used, the packages themselves, or both. As an example, the latest Joomla! release needs “tweaks” to be fully “optimal”, and the tweaks required are different depending on whether you use php4 or php5. It is quite possible that you may find the same situation with one, or more of the packages you are using (and even if you don’t initially, a subsequent release of any of the packages may introduce such a situation!). Part of this is probably due to the fact that many applicatioins are kind of “stuck” between offering PHP4 compatibililty, and requiring PHP5; they are coded in different ways, and shared hosting companies often manage php settings differently for the different version (as there are different vulnerabilities). That is the “bad” news.
The “good” news is:
As long as you pay by credit card, you have a 97 day period during which you can test everything out and still get a refund if things do not work as you need/expect.
Dreamhost allows you to operate an unlilmited number of domains and sub-domains at no additional cost - this makes it feasable to, if necessary, run each of the above packages in a designated subdomain, with each having its own custom instance of php.cgi/php.ini, if that is what is required/desired due to incompatibility of their php settings, or the default settings of the php versions “precompiled” at Dreamhost.
Dreamhost does allow you to compile, and use, your own version of php , so you have lots of flexibility.
I am not trying to discourage you; I don’t think you will find a more customizable, or powerful, shared server solution out there than that provided by Dreamhost. I just want you to realize the the types of problems you described having with these packages and your current host are more related to your choice of packages, and the current state of PHP, than they are with any host. The nature of shared hosting is that php has to be controlled, to some degree, for the good of all who share the server, and some php settings that are “wanted” or “required” by certain packages are going be defaulted to different settings by different providers.
You should also understand that, while the Dreamhost techs are a great and knowlegeable bunch, the kinds of issues you were encountering with these third-party applications are not the types of problems you can expect them to be of much help with (that is just not their function).
Luckily, there is a pretty good bunch of customers here that are generally willing to help with the stuff that DH techs really can’t get involved in.
I say you should give a try, while preserving you ability to get a refund if it doesn’t work out (read terms carefully, use a charge card, etc.)