Sky February 2016

Permalinks in Wordpress not working with Laravel + Nginx

I have a site developed with Laravel on my main route say www.example.com/. I have configured it properly with Nginx and php-fpm. My config is below.

Then I added a blog in route /blog (www.example.com/blog/) and configured it with Nginx alias.

Now the problem is that Permalinks in Wordpress are not working. Nginx redirects to Laravel's 404 page.

For example when user enters some URL like this: example.com/blog/about, Laravel's 404 page shows up which is weird.

How can I fix this? How can I config Nginx? What's Wrong?

server {
    listen       80;
    server_name  example.com;
    root /usr/share/nginx/html/;

    location /blog {
        try_files $uri $uri/ /index.php?$args;
        alias /usr/share/nginx/blog/;
        index  index.php index.html index.htm;

        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            include        fastcgi_params;
            fastcgi_param  SCRIPT_FILENAME   /usr/share/nginx$fastcgi_script_name;
        }
    }

    location / {
        root   /usr/share/nginx/main_site;
        index  index.php index.html index.htm;

        try_files $uri $uri/ /index.php$is_args$args;

        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }
}

Answers


Richard Smith February 2016

You do not need to use alias when the location matches the end of the alias path. See this document.

The try_files in location /blog needs to default to the WordPress router (/blog/index.php) and not the Laravel router (/index.php).

Try:

location /blog {
    try_files $uri $uri/ /blog/index.php?$args;
    root /usr/share/nginx;
    ...

    location ~ \.php$ {
        ...
        fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;
    }
}

Post Status

Asked in February 2016
Viewed 1,674 times
Voted 12
Answered 1 times

Search




Leave an answer