The "meaning" of prepositions is often vague (notoriously hard to translate, for example). The default interpretation of those two sentences would be the same. However, "by" means "somewhere near", while "at" means roughly "at the end of a path leading to it".* So "by" might allow a wider range of positions, although by default it would be assumed to also be "right next to", like "at". There isn't any more substantial difference between the sentences, just some semantic flexibility in spatial prepositions.
[*Note: "at" does not necessarily imply motion of the object described, although in most circumstances at least indirectly it probably does. You can say "I am at my office", which doesn't directly refer to motion but does indirectly imply that I was somewhere else previously. With inanimate objects you might be able to come up with a sentence that doesn't imply motion, but even then it often might. "The question mark is at the end of the sentence" I suppose does not imply motion, except in the sense of the writer's hand placing it there at some point. Regardless, the meaning of "at" seems somewhat similar to the meaning of the verb "arrive" to me, since if you have not yet "arrived" somewhere, then you are not yet "at" that place. "By" just means "near, close to", so it is interpreted relatively.]