I did this with a Win2k box earlier this year.
You'll need a flavor of Apache. If you want to live on the edge, go with v2.x. If you prefer stable, go with v1.3.x.
- Install Apache.
- Install PHP
- Make sure Apache is listening on a different port then Tomcat
- Make sure Apache dishes web pages
- Make sure Apache dishes PHP pages
There's an Apache/Tomcat/Jakarta connector you'll need to install. I sadly don't have the links, but the info in the last sentence should get you started on google or on Tomcat's web site. For Win2k, the install wasn't too bad - BUT READ THE DIRECTIONS. This part can be the trickiest.
What you end up doing is setting up Apache to intercept all web traffic. Apache has a list (which you'll provide it) of Java/Tomcat URLs and home directories. Apache will check the inbound request and if there's a match, will pass the request off to Tomcat. Tomcat then pipes everything through Apache - which is kinda cool. I've got Tomcat on 8080 (I think) and it Apache on port 80. To get to a Tomcat app, I'd normally have to do [url]http://[/url][tomcat]:8080/[app dir]. But because Apache is in the mix, you'll be able to just do: [url]http://[/url][server]/[app dir] and your Java app will come up (assuming you have everything working). This is getting fancy, but the integration will be seamless.
The PHP will strictly be driven by Apache. And the Java strictly driven by Tomcat. The two languages won't be able to talk directly to each other unless you get creative (they can share databases - I've got MySQL on this box and both talk regularly to the databases).
If the connector approach is for you, plan ahead. Read up on all the docs you can find. Ask questions. Be patient. Experiment with the config if it doesn't work at first. And set aside some time - you may find you'll need either a couple hours or a few days to make this all work.