[deleted]
The simple answer to your question is that there was a big Greek fleet in the way. Xerxes' campaign involved the simultaneous, side-by-side advance of his army and fleet, and the Greeks were well aware that any effort to stop one of these would be doomed if there was no way to stop the other. Their plan, therefore, was not simply to send a bunch of troops to Thermopylai and hope for the best. They supported the land force with an impressive 271 warships, which were to block the Straits of Euboia, preventing any Persian attempt to encircle the men at the pass by sailing around them. The terrain at the southern edge of Thessaly provided a unique opportunity to block the advance of both fleet and army by deploying forces in geographical bottlenecks. You can see how this worked on this map. While Leonidas and his army fought the battle of Thermopylai, the Greek fleet fought the battle of Artemision, holding the Persians in place for 3 days. They only withdrew from their position when they heard the news of the encirclement and destruction of the troops in the pass, which in turn exposed the fleet to encirlement by Xerxes' land forces.
Now, the Persians obviously weren't stupid, and realised that there were ways to encircle the Greeks at Artemision just as there were ways to turn the pass at Thermopylai. As you can see on the map above, they detached a force of ships to sail all the way around Euboia and catch the Greeks in the rear, cutting off their retreat and annihilating the bulk of the Greek alliance's naval power. However, a storm struck this detachment on its way around the island, and all hands were lost. The result was that the Greek defence at Artemision was more successful than that at Thermopylai; despite the Persian numerical advantage, Artemision was effectively a stalemate, while Thermopylai was an unqualified defeat.
From a more ideological perspective, however, there is also the point you made yourself:
Xerxes wanted to send a message that none could stop his advance.
Given that Xerxes' venture was a display of power as much as a campaign of conquest, it really wouldn't make sense for him to allow some rag-tag band of uppity Greeks to thwart the advance of his main force. Refusing to engage them would be an admission that the force he brought was somehow insufficient to deal with them, which would have been unthinkable. How did a force of just 7000 Greeks dare to defy the will of the King of Kings, King of the Four Corners of the World, King of the Universe? Even if Xerxes were somehow able to crush the Greek fleet, board his best troops on his ships and sail around to the nearest suitable landing site (which is pretty far off - namely, the famous plain of Marathon in Attika), he probably wouldn't have chosen to do so. Far better to fight the tiny band of Greeks until the inevitable result - Persian victory - proved the legitimacy of his rule and his campaign.