Difference between revisions of "Nginx Installation and Configuration"

From Biowikifarm Metawiki
Jump to: navigation, search
Line 78: Line 78:
 
Restart php5-fpm and nginx:
 
Restart php5-fpm and nginx:
 
  sudo /etc/init.d/php5-fpm restart; sudo /etc/init.d/nginx restart
 
  sudo /etc/init.d/php5-fpm restart; sudo /etc/init.d/nginx restart
 +
 +
 +
----
 +
 +
change from sock to 9000 port:
 +
 +
        location ~ \.php$ {
 +
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
 +
                # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
 +
 +
                # With php5-cgi alone:
 +
                fastcgi_pass 127.0.0.1:9000;
 +
                # With php5-fpm:
 +
                #fastcgi_pass unix:/var/run/php5-fpm.sock;
 +
                fastcgi_index index.php;
 +
                include fastcgi_params;
 +
        }
 +
 +
----
 +
 +
Neu:
 +
sudo apt-get install php5-cgi
 +
 +
http://wiki.nginx.org/PHPFcgiExample
 +
 +
/etc/php5/fpm/php-fpm.conf
 +
 +
  
 
----
 
----
Line 91: Line 119:
 
  sudo /etc/init.d/fedora start
 
  sudo /etc/init.d/fedora start
 
)
 
)
 +
 +
  
  
 
Test port: next time try 8880!
 
Test port: next time try 8880!

Revision as of 12:20, 28 June 2012

Based on

Protocol of preliminary work done so far:

sudo nano /etc/apt/sources.list

add lines:

# necessary only for php-fpm, the php version for nginx:
deb http://packages.dotdeb.org stable all

Add the GnuPG key to your distribution:

wget http://www.dotdeb.org/dotdeb.gpg
cat dotdeb.gpg | sudo apt-key add -
rm dotdeb.gpg

Install:

sudo apt-get update
sudo apt-get install php5 php5-fpm php-pear php5-common php5-mcrypt php5-mysql php5-cli php5-gd
sudo apt-get install nginx

Change php-fpm configuration with:

sudo nano /etc/php5/fpm/php5-fpm.conf

setting:

pm.max_children = 25
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 10
pm.max_requests = 1500
request_terminate_timeout = 450s

Change nginx configuration with:

sudo nano /etc/nginx/nginx.conf

adding the settings for

client_max_body_size 20M;
client_body_buffer_size 128k;

edit the default vhost config:

cd /etc/nginx/sites-enabled; nano /etc/nginx/sites-available/default
server {
               listen 80;
               server_name website.com www.website.com;
               access_log /var/log/nginx/website.access_log;
               error_log /var/log/nginx/website.error_log;
               root /var/www/www.website.com;
               index index.php index.htm index.html;
               location ~ .php$ {
                 fastcgi_pass   127.0.0.1:9000;
                 fastcgi_index  index.php;
                 fastcgi_param  SCRIPT_FILENAME /var/www/www.website.com$fastcgi_script_name;
                 include fastcgi_params;
               }
      }


The original default file contains a note:

# NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini - we did change that.


(To create symlinks for further vhost files like "www.example.com" under sites-enabled:

ln -s /etc/nginx/sites-available/www.example.com /etc/nginx/sites-enabled/www.example.com

)


NOT YET DONE OR CHECKED, our keys are elsewhere: For ssl on port 443, copy and paste the entire vhost code into the bottom of the vhost file, change 'listen' to 443 and point to the ssl certs:

ssl on;
ssl_certificate /path/to/certificate/www.website.com.crt;
ssl_certificate_key /path/to/certificate_key/www.website.com.key;


Restart php5-fpm and nginx:

sudo /etc/init.d/php5-fpm restart; sudo /etc/init.d/nginx restart



change from sock to 9000 port:

       location ~ \.php$ {
               fastcgi_split_path_info ^(.+\.php)(/.+)$;
               # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
               # With php5-cgi alone:
               fastcgi_pass 127.0.0.1:9000;
               # With php5-fpm:
               #fastcgi_pass unix:/var/run/php5-fpm.sock;
               fastcgi_index index.php;
               include fastcgi_params;
       }

Neu: sudo apt-get install php5-cgi

http://wiki.nginx.org/PHPFcgiExample

/etc/php5/fpm/php-fpm.conf



(TEMP: TO TEST on port 8183 first disable fedora:

sudo /etc/init.d/fedora stop
sudo /etc/init.d/php5-fpm restart; sudo /etc/init.d/nginx restart

TESTING http://biowikifarm.net:8183/metawiki/index.php?title=Upgrades_and_Changes&diff=0&oldid=3936 results in: "502 Bad Gateway - nginx/1.2.1" REVERT WITH:

sudo /etc/init.d/php5-fpm stop; sudo /etc/init.d/nginx stop
sudo /etc/init.d/fedora start

)



Test port: next time try 8880!