nginx config to run prestashop 1.6.x
this port is initially based on original settings & restrictions from prestashop bundle aimed at apache httpd
v2 has been completely revised & improved — the ruleset has been rearranged in native nginx way to utilize its power, thus forcing pages to load up to 5-10x faster1
[nb] the last rule at fpm-prestashop.conf assumes the upstream block w/ name php is declared at http section of your nginx.conf
if not, you gotta declare it this way to get the whole thing working properly
upstream php {
server unix:/var/run/php-fpm/php-fpm.sock;
}
in turn, the above declaration assumes the php-fpm daemon is available thru socket unix:/var/run/php-fpm/php-fpm.sock
if not, you gotta either configure your php-fpm daemon pool to listen this socket or replace unix:/var/run/php-fpm/php-fpm.sock w/ your pool settings respectively
for example, if your php-fpm daemon is running w/ default pool settings like listen = 127.0.0.1:9000 replace unix:/var/run/php-fpm/php-fpm.sock w/ 127.0.0.1:9000
one more & last thing on php-fpm daemon pool config — it's highly recommended for security purposes either to leave the line security.limit_extensions commented or to uncomment it & set (cut) the value exactly to .php removing the rest
;security.limit_extensions = .php .php3 .php4 .php5
security.limit_extensions = .php[1] the lion's share of the boost is achieving due to replacement of the snail rewrite rules w/ the rapid return / try_files ones↺
glory to Ukraine! 🇺🇦
Juliy V. Chirkov,
twitter.com/juliychirkov