Nginx rewrite för drupal

Har du en drupalsite som du vill köra på Nginx så måste du skriva om rewrite reglerna för siten, precis som för WordPress( som du kan läsa om här: Nginx rewrite för wordpress ).

Precis som för wordpress ska du lägga till rewriteregler i location för roten för siten, det bör se ut såhär:

if (!-e $request_filename) {
    rewrite ^/(.*)$ /index.php?q=$1 last;
}

Eventuellt kan du behöva lägga till “break;” innan slutklammern för rewrite regeln.

 

WordPress rewrite URL med Nginx

Eftersom jag har en nyinstallerad WordPress site på en webbserver som kör Nginx så vill jag ju så klart ha snygga URL:er, det är enklare att förstå, snyggare och mer sökmotor vänligt. För att lösa det så skrev jag om vhost konfigurationen så den ser ut såhär:

location / {
                root   /var/www/abergman.se;
                index  index.php;

                if (-e $request_filename) {
                   break;
                }
                rewrite ^/(.+)$ /?q=$1 last;
        }

Därefter ändrade jag inställningarna i WordPress under “Settings -> Permalinks -> Custom Format ” till:

/%year%/%monthnum%/%day%/%postname%/

Det gör att länkarna ser ut såhär: http://www.abergman.se/2010/05/13/migrera-webbsiter/ istället för http://www.abergman.se/?p=77 för att snygga till det ännu mer kan man även välja att bara visa titeln genom att ändra till:

/%postname%/

Vilket jag nu använder, det blir snyggt och enkelt.