Nun, ich habe es irgendwie beantwortet ...
/ var / www / localhost / htdocs / farmer ist die Basis dokuwiki / var / www / localhost / htdocs / barn ist ein Verzeichnis, in dem sich meine Farm befindet. / var / www / localhost / htdocs / barn / cow ist das 1. Tier / var / www / localhost / htdocs / barn / duck ist das 2. Tier
farmer / inc / preload.php ist gemäß den Tipps konfiguriert:
if (! defined ('DOKU_FARMDIR')) define ('DOKU_FARMDIR', '/ var / www / localhost / htdocs / barn');
cow / conf / local.protected.php ist gleich konfiguriert
$ conf ['basedir'] = '/ barn / cow /';
duck / conf / local.protected.php ist gleich konfiguriert
$ conf ['basedir'] = '/ barn / duck /';
jetzt ist die nginx localhost.conf so konfiguriert:
server { listen 80; server_name localhost; access_log /var/log/nginx/localhost_access_log main; error_log /var/log/nginx/localhost_error_log info; rewrite_log on; root /var/www/localhost/htdocs; location ~ /(data/|conf/|bin/|inc/|install.php) { deny all; } # post-install lockdown location / { try_files $uri $uri/ doku.php @farmer; autoindex on; } location /cow { return 301 http://$host/barn/cow/doku.php; } location /duck { return 301 http://$host/barn/duck/doku.php; } location ~ /barn { index doku.php; autoindex on; rewrite ^/barn/?([^/]+)/(.*) /farmer/$2?animal=$1; rewrite ^/barn/?([^/]+)$ /farmer/?animal=$1; } location @farmer { rewrite ^/farmer/_media/(.*) /lib/exe/fetch.php?media=$1; rewrite ^/farmer/_detail/(.*) /lib/exe/detail.php?media=$1; rewrite ^/farmer/_export/([^/]+)/(.*) /doku.php?do=export_$1&id=$2; rewrite ^/farmer/(.*) /doku.php?id=$1&$args; } location ~ \.php$ { try_files $uri =404; include /etc/nginx/fastcgi.conf; fastcgi_pass 127.0.0.1:9000; } }
Ich kann zu http: // localhost / farmer für die Basis, http: // localhost / cow ( navigieren zu http: //localhost/bar/cow/doku.php, intern umgeschrieben als http: // localhost / farmer /? Tier = Kuh ) für das 1. Tier und das gleiche für das 2. Tier.
Ich mag Aspekte des Nginx-Kettenladens nicht, aber es funktioniert (tm)