From 8bd1732647be0b5b2e4ad6ad7795135e652ded86 Mon Sep 17 00:00:00 2001 From: Ashley Rich Date: Tue, 17 Nov 2015 11:33:55 +0000 Subject: [PATCH] Multisite subdirectory example added --- per-site/multisite-subdirectory.conf | 11 ++++++ sites-available/.gitignore | 1 + sites-available/multisite-subdirectory.com | 40 ++++++++++++++++++++++ 3 files changed, 52 insertions(+) create mode 100644 per-site/multisite-subdirectory.conf create mode 100644 sites-available/multisite-subdirectory.com diff --git a/per-site/multisite-subdirectory.conf b/per-site/multisite-subdirectory.conf new file mode 100644 index 0000000..784dc35 --- /dev/null +++ b/per-site/multisite-subdirectory.conf @@ -0,0 +1,11 @@ +# Try static files before passing to ms-files.php. +location ~ ^/[_0-9a-zA-Z-]+/files/(.*)$ { + try_files /wp-content/blogs.dir/$blogid/files/$2 /wp-includes/ms-files.php?file=$2; +} + +# Rewrite multisite '.../wp-.*' and '.../*.php'. +if (!-e $request_filename) { + rewrite /wp-admin$ $scheme://$host$uri/ permanent; + rewrite ^/[_0-9a-zA-Z-]+(/wp-.*) $1 last; + rewrite ^/[_0-9a-zA-Z-]+(/.*\.php)$ $1 last; +} \ No newline at end of file diff --git a/sites-available/.gitignore b/sites-available/.gitignore index 6e17db8..a186c1a 100644 --- a/sites-available/.gitignore +++ b/sites-available/.gitignore @@ -5,5 +5,6 @@ !.gitignore !default !fastcgi-cache.com +!multisite-subdirectory.com !singlesite.com !ssl.com \ No newline at end of file diff --git a/sites-available/multisite-subdirectory.com b/sites-available/multisite-subdirectory.com new file mode 100644 index 0000000..8103df0 --- /dev/null +++ b/sites-available/multisite-subdirectory.com @@ -0,0 +1,40 @@ +server { + # Ports to listen on + listen: 80; + + # Server name to listen for + server_name multisite-subdirectory.com; + + # Path to document root + root /sites/multisite-subdirectory.com/public; + + # File to be used as index + index index.php; + + # Overrides logs defined in global/logs.conf, allows per site logs. + access_log /sites/multisite-subdirectory.com/logs/access.log; + error_log /sites/multisite-subdirectory.com/logs/error.log; + + location / { + try_files $uri $uri/ /index.php?$args; + } + + # Multisite subdirectory install + include per-site/multisite-subdirectory.conf; + + location ~ \.php$ { + try_files $uri =404; + include global/fastcgi-params.conf; + + # Change socket if using PHP pools + fastcgi_pass unix:/var/run/php5-fpm.sock; + } +} + +# Redirect www to non-www +server { + listen 80; + server_name: www.multisite-subdirectory.com; + + return 301 $scheme://multisite-subdirectory.com$request_uri; +} \ No newline at end of file