Why is wordpress site download file instead displaying site?

July 4, 2017 137 views
DigitalOcean Articles Ubuntu 16.04

I can't get my wordpress install live locally, i'm using wordpress, nginx, mySQL, php 7.1, ubuntu 16.04 and below is my nginx file. I just get a download file instead of the website.

server {
listen 80 defaultserver;
listen [::]:80 default
server ipv6only=on;

    root /var/www/html/homebuilder;
    index index.php index.html index.htm;

    server_name wwww.qa.homebuilder.com homebuilder.com;

    location / {
            # try_files $uri $uri/ =404;
             index index.php index.html index.htm index.nginx-debian.html;
            try_files $uri $uri/ /index.php?q=$uri&$args;
    }

    error_page 404 /404.html;

    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
            root /usr/share/nginx/html;
    }

    location ~ \.php$ {
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
            fastcgi_index index.php;
            include fastcgi_params;
    }

}

2 Answers
hansen July 4, 2017
Accepted Answer

Hi @scottastafford5

Are you sure you're using PHP 7.1 and not 7.0 ? The default with Ubuntu 16.04 is 7.0.

Did you mean to have server_name wwww.qa.homebuilder.com homebuilder.com; instead of server_name homebuilder.com www.homebuilder.com; ?

Try this instead:

server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;

    root /var/www/html/homebuilder;
    index index.php index.html index.htm;

    server_name homebuilder.com www.homebuilder.com;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
    }

    location ~ /\. {
        deny all;
    }
}

And then run sudo service nginx configtest to test the configuration and run sudo service nginx restart to restart Nginx and activate the configuration.

  • I can get to wp-admin page now but i still can't get to front page, i just get php file, i spoke to some else. They said i need to put rewrite rules into my script? Any ideas?

    • @scottastafford5

      I can see your front page, wp-admin login, so I would guess it's just cache in your browser. Try opening an incognito window and visit your page.

Have another answer? Share your knowledge.