GIT – A step by step tutorial on installing and configuring -FPM, , & MySQL on an EC2 instance running AMI. The procedure has been tested on Amazon AMI, but should also apply in general to Fedora/Red Hat/ distributions. A brief introduction to FastCGI, PHP-FPM, and was posted in the article Understanding PHP, PHP-FPM and Nginx. Should you be interested in simply installing , PHP, APC, and MySQL on Amazon or CentOS Linux, please follow the tutorial here.

1. Install Linux updates, set time zones, followed by GCC and Make

sudo  -y update
sudo ln -sf /usr//zoneinfo/America/Indianapolis \
      /etc/localtime
sudo yum install -y gcc make

 

2. Install Nginx and PHP-FPM

sudo yum install -y nginx php-fpm

 

3. Install PHP extensions

sudo yum install -y php-devel php-mysql php-pdo \
      php-pear php-mbstring php-cli php-odbc \
      php-imap php-gd php-xml php-soap

 

4. Install PHP-APC

sudo yum install -y php-pecl-apc
sudo yum install -y pcre-devel

 

5. Install MySQL

sudo yum -y install mysql- mysql

 

6. Nginx Configuration

sudo nano /etc/nginx/conf.d/default.conf
If you want the location of your web in the default Amazon Linux AMI directory (/var/www/):
location / {
    root   /var/www/html;
    index  index.php index.html index.htm;
}
location ~ \.php$ {
      fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
      fastcgi_index  index.php;
      fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/
                       html$fastcgi_script_name;
      include        fastcgi_params;
  }
If you want the location of your web root in the default Nginx directory (/usr/share/nginx/html):
location / {
    root   /usr/share/nginx/html;
    index  index.php index.html index.htm;
}
location ~ \.php$ {
      fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
      fastcgi_index  index.php;
      fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/
                       html$fastcgi_script_name;
      include        fastcgi_params;
  }

 

7. PHP-FPM Configuration

sudo nano /etc/php-fpm.d/www.conf
[...]
;listen = 127.0.0.1:9000
listen = /var/run/php-fpm/php-fpm.sock
;listen.owner = nobody
listen.owner = nginx
;listen.group = nobody
listen.group = nginx
;listen.mode = 0666
listen.mode = 0664

user = nginx
group = nginx
[...]

 

8. Auto Start Nginx, PHP-FPM, and MySQL in EC2 Amazon Linux

sudo chkconfig nginx on
sudo chkconfig mysqld on
sudo chkconfig php-fpm on

 

9. Auto Start Nginx, PHP-FPM, and MySQL in EC2 Amazon Linux

sudo service php-fpm start
sudo service nginx start
If everything went well, you should see the following in the root web address:

nginx-ec2

Print Friendly, PDF & Email

Comments

comments

Bài viết liên quan