title: nginx and owncloud in subfolder
body: <p>I want to have a owncloud instance in a subfolder on my nginx server. But I have problems with some of the files requested by opwncloud (it seems css and js don't load).</p>
  
  <p>Here is the nginx conf file for this virtual host :</p>
  
  <pre><code>server {
     listen         80;
     server_name    blackblock.22decembre.eu;
     return 301     https://blackblock.22decembre.eu$request_uri;
  }
  
  server {
  listen 443 default_server ssl;
  
  server_name blackblock.22decembre.eu;
  root /srv/www/blackblock/;
  
  access_log  /var/log/nginx/blackblock.access.log;
  error_log   /var/log/nginx/blackblock.errors.log;
  
  index index.html index.php;
  
  # This block will catch static file requests, such as images, css, js
  # The : prefix is a "non-capturing" mark, meaning we do not require
  # the pattern to be captured into $1 which should help improve performance
  location ~* \.(:ico|css|js|gif|jpeg|png)$ {
      # Some basic cache-control for static files to be sent to the browser
      expires max;
      add_header Pragma public;
      add_header Cache-Control "public, must-revalidate, proxy-revalidate";
  }
  
  # remove the robots line if you want to use wordpress" virtual robots.txt
  # location = /robots.txt { access_log off; log_not_found off; }
  location = /favicon.ico { access_log off; log_not_found off; }
  
  # this prevents hidden files (beginning with a period) from being served
  location ~ /\. { access_log off; log_not_found off; deny all; }
  
  #location ~ ^(?&lt;script_name&gt;.+?\.php)(?&lt;path_info&gt;/.*)?$ {
  location ~ \.php {
      fastcgi_param SCRIPT_NAME $fastcgi_script_name;
      #fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      fastcgi_param PATH_INFO $path_info;
      fastcgi_index index.php;
      fastcgi_pass unix:/run/php5-fpm.sock;
      include fastcgi_params;
  }
  
  location /roundcube/program/js/tiny_mce/ { alias /usr/share/tinymce/www/; }
  location /roundcube/(config|temp|logs) { deny all;}
  
   ##### owncloud
   location ~ /owncloud/ {
  root /srv/www/blackblock/owncloud/;
  try_files $uri $uri/ index.php;
  
  #client_max_body_size 10G; # set max upload size
      #fastcgi_buffers 64 4K;
  
      rewrite ^/caldav(.*)$ /remote.php/caldav$1 redirect;
      rewrite ^/carddav(.*)$ /remote.php/carddav$1 redirect;
      rewrite ^/webdav(.*)$ /remote.php/webdav$1 redirect;
  
      location ~ ^/remote.php(/.*)$ {
              fastcgi_split_path_info ^(.+\.php)(/.*)$;
              fastcgi_pass unix:/run/php5-fpm.sock;
      include fastcgi_params;
      }
  
      error_page 403 /core/templates/403.php;
      error_page 404 /core/templates/404.php;
  
      location ~ ^/(data|config|\.ht|db_structure\.xml|README) {
              deny all;
      }
  
  # The following 2 rules are only needed with webfinger
  rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
  rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last;
  rewrite ^/.well-known/carddav /remote.php/carddav/ redirect;
  rewrite ^/.well-known/caldav /remote.php/caldav/ redirect;
  rewrite ^(/core/doc/[^\/]+/)$ $1/index.html;
  
      # Optional: set long EXPIRES header on static assets
      #location ~* ^.+\.(jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ {
       #       expires 30d;
              # Optional: Don't log access to assets
        #      access_log off;
  #   }
  }
  
      ##### torrent (not related to owncloud, flask application)
  location = /flask-torrent { rewrite ^ /flask-torrent/ last; }
  
   }
  </code></pre>
  
  <p>I can't find why owncloud doesn't load correctly !
  You can have a look at the website, I feel fine and secured for that : <a href="https://blackblock.22decembre.eu/owncloud/" rel="nofollow">https://blackblock.22decembre.eu/owncloud/</a> (cacert certificates).
  If I launch a specific virtual host for owncloud, it works perfectly, but I don't want, I prefer it in a subfolder of this host (blackblock) !</p>