Office of Museum Technology FLMNH Linux Pages

Florida Museum of Natural History

University of Florida Installing Apache, PHP, and MySQL on Fedora Core

This will install the basic components for a dynmaic, database-driven web site. We use yum to handle dependencies and gather all of the required packages.

1. Install Apache (httpd), PHP, MySQL (server and client), and the component that allows php to talk to mysql.

yum -y install httpd php mysql mysql-server php-mysql

2. Configure the new services to start automatically

/sbin/chkconfig httpd on /sbin/chkconfig --add mysqld [this is not required with FC4 and above] /sbin/chkconfig mysqld on

/sbin/service httpd start /sbin/service mysqld start

3. IMPORTANT! Set up the mysql database root password. Without a password, ANY user on the box can login to mysql as database root. The mysql root account is a separate password from the machine root account.

mysqladmin -u root password 'new-password' [quotes are required]

4. Make additional security-related changes to mysql.

mysql -u root -p

mysql> DROP DATABASE test; [removes the test database] mysql> DELETE FROM mysql.user WHERE user = ''; [Removes anonymous access] mysql> FLUSH PRIVILEGES;

5. Following the above steps, the document root for Apache is /var/www/html/

Create a test PHP script (such as phpinfo.php) and place it in the document root. A useful test script sample:

<?php phpinfo(); ?>

6. Create a database and database user for your data. You will use this database and user name in your database connection string. The GRANT statement actually creates a new MySQL user account.

mysql> CREATE DATABASE web_db; mysql> GRANT ALL PRIVILEGES ON web_db.* TO 'web_user'@'localhost' IDENTIFIED BY 'thepassword';

Last Update 7/1/2005 by Dan Stoner Send us an email: (Replace '-at-' with '@') FLMNH Linux Pages Home

OMT Home