56 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
{config, ...}: {
 | 
						|
  services.phpfpm.pools.nextcloud.settings = {
 | 
						|
    "listen.owner" = config.services.caddy.user;
 | 
						|
    "listen.group" = config.services.caddy.group;
 | 
						|
  };
 | 
						|
 | 
						|
  users.users.caddy.extraGroups = ["nextcloud"];
 | 
						|
 | 
						|
  services.caddy = {
 | 
						|
    enable = true;
 | 
						|
 | 
						|
    # Setup Nextcloud virtual host to listen on ports
 | 
						|
    virtualHosts = {
 | 
						|
      "${config.services.nextcloud.hostName}" = {
 | 
						|
        useACMEHost = "${config.services.nextcloud.hostName}";
 | 
						|
        extraConfig = ''
 | 
						|
           redir /.well-known/carddav /remote.php/dav 301
 | 
						|
           redir /.well-known/caldav /remote.php/dav 301
 | 
						|
           redir /.well-known/webfinger /index.php/.well-known/webfinger 301
 | 
						|
           redir /.well-known/nodeinfo /index.php/.well-known/nodeinfo 301
 | 
						|
 | 
						|
           encode gzip
 | 
						|
           reverse_proxy localhost:9000
 | 
						|
           header Strict-Transport-Security max-age=31536000;
 | 
						|
           @forbidden {
 | 
						|
            path /.htaccess
 | 
						|
            path /data/*
 | 
						|
            path /config/*
 | 
						|
            path /db_structure
 | 
						|
            path /.xml
 | 
						|
            path /README
 | 
						|
            path /3rdparty/*
 | 
						|
            path /lib/*
 | 
						|
            path /templates/*
 | 
						|
            path /occ
 | 
						|
            path /console.php
 | 
						|
          }
 | 
						|
          handle @forbidden {
 | 
						|
            respond 404
 | 
						|
          }
 | 
						|
 | 
						|
          handle {
 | 
						|
          	root * /var/www/html
 | 
						|
          	php_fastcgi 127.0.0.1:9000 {
 | 
						|
          		# Tells nextcloud to remove /index.php from URLs in links
 | 
						|
          		env front_controller_active true
 | 
						|
          	}
 | 
						|
          	file_server
 | 
						|
          }
 | 
						|
        '';
 | 
						|
      };
 | 
						|
      "onlyoffice.gladtherescake.eu" = {
 | 
						|
      };
 | 
						|
    };
 | 
						|
  };
 | 
						|
}
 |