There are several locations, each of which is endowed with a resource that is specific to that location. Each agent will go to a single location and harvest some of the resource there. Several agents may go to each location, and thereby cause a congestion effect that is modeled in a general way. We assign harvesting rights based on preferences alone, though we later extend the model to accommodate private endowments of money. We find the best allocation rule in the class of rules that are strategy-proof, anonymous, and that satisfy a weak continuity property. For a special class of preferences, we also find an ascending mechanism, similar to an auction, that implements the rule. The rule coincides with a special pseudo-market equilibrium, wherein agents buy their desired resource with tokens distributed by the social planner.