O Apache suporta a configuração do host virtual. Há muitas informações sobre como configurar isso no link e link . Basta configurar isso no Apache com um endereço IP dedicado e, em seguida, informar seus clientes para definir seus registros DNS para apontar para o endereço IP em questão. Os nomes das pastas no servidor precisarão corresponder ao nome de domínio (ou outro critério correspondente ao primeiro link acima).
Com o Tumblr, eles provavelmente têm um único aplicativo em execução no endereço IP especificado que determina quais configurações do site usar com base em uma variável CGI (nome_do_servidor, geralmente). Se cada um de seus sites de clientes usar sua própria webroot, a configuração do Apache deverá funcionar para você. Se você está hospedando um aplicativo que todos eles estão usando, então você pode fazer com que o Apache ouça todas as solicitações em um endereço IP dedicado e, em seguida, diferencie-as dentro do aplicativo por meio da variável CGI.