Dokuwiki
0.7.x to 0.8.x
Initial attempt as yet untested.
upstream my_php { server 127.0.0.1:9000; } server { listen 80; server_name your.domain.tld; access_log /var/log/nginx/localhost.access.log; root /var/www; index index.html index.htm index.php; location / { } location ~ /dokuwiki/(.*) { try_files $uri /dokuwiki/doku.php?id=$1&$args; } location ~ ^/dokuwiki/_media/(.*)$ { include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root/dokuwiki/lib/exe/fetch.php; fastcgi_param QUERY_STRING media=$1; fastcgi_pass my_php; } location ~ ^/dokuwiki/_detail/(.*)$ { include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root/dokuwiki/lib/exe/detail.php; fastcgi_param QUERY_STRING media=$1; fastcgi_pass my_php; } # This one might be doable with split_path_info but this seems ok anyway location ~ /dokuwiki/_export/([^/]+)/(.*)$ { include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root/dokuwiki/doku.php; fastcgi_param QUERY_STRING do=export_$1&id=$2; fastcgi_pass my_php; } location ~ \.php$ { fastcgi_pass my_php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include /etc/nginx/fastcgi_params; } }
0.6.x
This setup was originally found on Dokuwiki's docs with some slight modifications to remove things unrelated to the problem at hand. This setup assumes a debian-like setup with documents in /var/www and fastcgi running on localhost port 9000. TODO: Test new changes to be sure everything works
upstream my_php { server 127.0.0.1:9000; } server { listen 80; server_name your.domain.tld; access_log /var/log/nginx/localhost.access.log; root /var/www; index index.html index.htm index.php; rewrite ^(/dokuwiki/)_media/(.*) $1lib/exe/fetch.php?media=$2 last; rewrite ^(/dokuwiki/)_detail/(.*) $1lib/exe/detail.php?media=$2 last; rewrite ^(/dokuwiki/)_export/([^/]+)/(.*) $1doku.php?do=export_$2&id=$3 last; location / { } location /dokuwiki/ { if (!-f $request_filename) { rewrite ^(/dokuwiki/)(.*)?(.*) $1doku.php?id=$2&$3 last; rewrite ^(/dokuwiki/)$ $1doku.php last; } } location ~ \.php$ { fastcgi_pass my_php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include /etc/nginx/fastcgi_params; } }












