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;
    }
}
Need help with Linux Server or WordPress? We can help!

Leave a Reply

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