update vhost generation to work across multiple os