Вы, наверное, что-то не так поняли...
POST вообще не нужно кешировать (он по-умолчанию не кешируется nginx), нужно кешировать GET, HEAD но только для незарегистрированных пользователей, точнее тех у кого нет определенной куки.
Как-то можно определить есть у пользователя кука или нет?
Хотелось бы хотя бы небольшой пример конфига с ветвлением.