Magento 1.9 Nginx Configuration

Here is Nginx + php-fpm config for Magento 1.9 on Ubuntu 16.04/Debian 9.

server {
    listen 80;

    server_name mysite.com www.mysite.com;
    root /home/mysite.com/public_html/;

    listen 443 ssl http2;
    ssl on;
    ssl_certificate /etc/letsencrypt/live/mysite.com/fullchain1.pem;
    ssl_certificate_key /etc/letsencrypt/live/mysite.com/privkey1.pem;

    location / {
        index   index.html  index.php;
        try_files $uri $uri/ @handler;
        expires 30d;
    }

    ## These locations would be hidden by .htaccess normally
    location /app/                { deny all; }
    location /includes/           { deny all; }
    location /lib/                { deny all; }
    location /media/downloadable/ { deny all; }
    location /pkginfo/            { deny all; }
    location /report/config.xml   { deny all; }
    location /var/                { deny all; }


    ## Disable .htaccess and other hidden files
    location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
    }

    location @handler {
        rewrite / /index.php;
    }

    location ~ \.php/ {
        rewrite ^(.*\.php)/ $1 last;
    }

    location ~ \.php$ {
        if (!-e $request_filename) {
            rewrite / /index.php last;
        }

        expires         off;
        fastcgi_pass    unix:/run/php/php7.0-fpm.sock;
        include         snippets/fastcgi-php.conf;
    }
}
Add a comment

Leave a Reply

Your email address will not be published. Required fields are marked *

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Advertisement