There is a new revision of this tutorial available for Fedora 19.

Installing Nginx With PHP5 And MySQL Support On Fedora 10

Version 1.0
Author: Falko Timme

Nginx (pronounced "engine x") is a free, open-source, high-performance HTTP server. Nginx is known for its stability, rich feature set, simple configuration, and low resource consumption. This tutorial shows how you can install Nginx on a Fedora 10 server with PHP5 support (through FastCGI) and MySQL support.

I do not issue any guarantee that this will work for you!


1 Preliminary Note

In this tutorial I use the hostname with the IP address These settings might differ for you, so you have to replace them where appropriate.


2 Installing MySQL 5.0

First we install MySQL 5.0 like this:

yum install mysql mysql-server

Then we create the system startup links for MySQL (so that MySQL starts automatically whenever the system boots) and start the MySQL server:

chkconfig --levels 235 mysqld on
/etc/init.d/mysqld start

Now check that networking is enabled. Run

netstat -tap | grep mysql

It should show something like this:

[[email protected] ~]# netstat -tap | grep mysql
tcp        0      0 *:mysql                     *:*                         LISTEN      2407/mysqld
[[email protected] ~]#

If it does not, edit /etc/my.cnf and comment out the option skip-networking:

vi /etc/my.cnf


and restart your MySQL server:

/etc/init.d/mysqld restart


mysqladmin -u root password yourrootsqlpassword
mysqladmin -h -u root password yourrootsqlpassword

to set a password for the user root (otherwise anybody can access your MySQL database!).

If the last command throws an error at you...

[[email protected] named]# mysqladmin -h -u root password yourrootsqlpassword
mysqladmin: connect to server at '' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
[[email protected] named]#

... we can set the password as follows: connect to MySQL:

mysql -u root -p

Type in the password for the MySQL root user. Then, on the MySQL shell, do this:

mysql> USE mysql;

mysql> UPDATE user SET Password = password('yourrootsqlpassword') WHERE Host = '' AND User = 'root';

mysql> UPDATE user SET Password = password('yourrootsqlpassword') WHERE Host = '' AND User = 'root';


mysql> SELECT * FROM user;

to make sure that all rows where the user is root have a password.

If everything is looking ok, run


... and leave the MySQL shell:

mysql> quit;


3 Installing Nginx

Nginx is available as a package for Fedora 10 which we can install as follows:

yum install nginx

Then we create the system startup links for nginx and start it:

chkconfig --levels 235 nginx on
/etc/init.d/nginx start

Type in your web server's IP address or hostname into a browser (e.g., and you should see the nginx welcome page:

Share this page:

0 Comment(s)

Add comment


From: falko