Hi Stephen.

What distro are you using as it has a bearing on how to go about setting things up.  If you're using RedHat (very common) then the Apache, PHP and MySQL packages are on the CD's.  You should be able to install them using RPM (or up2date, yum, apt etc).  If you're not using RedHat then use what ever package management solution you have to install the RPM's, debs or whatever.

A reasonably up-to-date distro (RedHat 9, Fedora Core 1 etc) should come with Apache 2.0.x and PHP 4.3.x and some reasonably recent version of MySQL.

Personally I would recommend against using MySQL and instead use PostgreSQL.  But this is because I'm a DB geek and think of MySQL as a souped up flat file processor with SQL tacked on the front.  But MySQL is easy to use and does the trick for simple things so you can stick with it if you want.  If someone comes at you as a MySQL zealot stating "MySQL is faster and better and blah blah" they need to go and read a decent SQL DB book so they actually know what they are talking about.

Everyone is always talking about LAMP meaning Linux Apache MySQL PHP/Python/Per).  LAMP should really be Linux Apache Middleware PostgreSQL.  :)

Anyway, enough ranting, MySQL is a good enough starting point...

Most distros automatically configure Apache and PHP to work together as part of the package installation so you shouldn't have to twiddle with anything in the Apache config.

I don't know about other distros but RedHat's (since RH8) default HTML docs dir is /var/www/html.  If you're not going to be hosting any other "virtual" servers on this machine then you can just stick your PHP pages and stuff in that directory and they should just "work".  If you're wanting to host different sites with different domains then you will have to twiddle with the Apache config.  You should get to know the Apache config file tho as there is lots of good stuff that can be set up in the sake of security.

Configuring MySQL is a little more involved.  The basic steps you need to perform are:

Secure the "root" MySQL user.
Create a new database.
Create a new "super user" account for that new database and GRANT it the correct SQL permissions.
Create a new "www user" account for the new database and GRANT it the correct permissions.
Create your database schema.

Then it is just a matter of using the "www user" account to access the DB using PHP's PEAR::DB modules (or some other DB abstraction library).

There are lots and lots of docs out there on developing simple web apps.  As good a place to start as any would be www.onlamp.com.  I would highly recommend you get to know some good toolkits/frameworks and _NOT_ write everything from scratch.  There are lots of good PEAR modules (http://pear.php.net) to reuse and good templating systems like Smarty (http://smarty.php.net) and good form processing systems like Phrame (http://phrame.sourceforge.net/) to use that will save you endless amounts of hassle and time.


On Thu, 2004-03-25 at 13:17, Stephen Pearce wrote:
Thank you for all the advise.

Yes, you are correct about the ICU abbreviation ...
there is some open source medical software, but it doesn't fit our requirements here.
I will peruse some of the links you gave me and then get back to some of you.

I have previously installed apache on another system, but then got lost setting up the local pages ..
I thought I would do a staged implementation .. getting apache going then maybe pHp .. about which I know little .. and the MySQL

As a first q

Can someone tell me where to put index.html once
apche is installed .. so that it pops up when a remote system probes?

The breadth and speed of responces goes to reinforce my bias toward an open source solution

Thank you all again

Oliver Jones » Director » oliver.jones@deeperdesign.com » +64 (21) 41 2238
Deeper Design Limited » +64 (7) 377 3328 » www.deeperdesign.com