Se da por supuesto que Nginx ya está configurado para ejecutar código PHP. Antes de seguir con el procedimiento, se puede seguir este tutorial de instalación de NginX con soporte PHP en FreeBSD.
El server para DokuWiki tendrá este aspecto:
server { listen 80; server_name dokuwiki.example.com; access_log /var/log/nginx/dokuwiki.example.com-access.log main; location / { root /usr/local/www/nginx/dokuwiki; index doku.php; try_files $uri $uri/ @dokuwiki; } # Nice URLs to DokuWiki location @dokuwiki { rewrite ^/_media/(.*) /lib/exe/fetch.php?media=$1 last; rewrite ^/_detail/(.*) /lib/exe/detail.php?media=$1 last; rewrite ^/_export/([^/]+)/(.*) /doku.php?do=export_$1&id=$2 last; rewrite ^/(.*) /doku.php?id=$1 last; } # Deny directory access in Dokuwiki location ~ /(data|conf|bin|inc)/ { deny all; } # Deny access to .htaccess files location ~ /\.ht { deny all; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/local/www/nginx-dist; } # Let nginx know how to handle PHP using fastcgi location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/local/www/nginx/dokuwiki$fastcgi_script_name; include fastcgi_params; } }