Three towns on Mexico's Baja California peninsula have been placed under a state of emergency and 15,000 people have been evacuated in preparation for an expected hurricane.
The municipalities of Los Cabos, La Paz and Comondu are all bracing themselves for the arrival of Hurricane John.
Jose Gajon, Baja California's civil safety director, said the evacuees were being sent to 131 shelters that can withstand the storm's winds.
The Miami-based National Hurricane Centre said the storm was projected to reach the tourist resort of Cabo San Lucas on Friday after drenching coastal areas of the mainland's Pacific coast.
In Los Cabos, one of Mexico's most exclusive resorts, shopkeepers boarded up windows and five-star hotels readied their own shelters for mostly US guests.
Long lines of tourists waited at Los Cabos airport for flights off the low-lying peninsula.
Nurse Debbie Malanick, 52, was happy to take four flights to reach home in Miami.
Malanick said: "It's probably going to take 24 hours to get there, but that's OK. You have to get out any way you can, a flight to anywhere to get me back home."
Puerto Vallarta, another tourist destination, was also dangerously close to the storm's projected path.
On Thursday, it was reported that John had gradually lost some of its power, decreasing to category two, from a four on the five-level Saffir Simpson intensity scale.
Hurricane warnings have been issued for a stretch of about 400km of the mainland's coastline as well as the southernmost areas of the Baja California peninsula.
The authorities in the state of Jalisco ordered the evacuation of 8,000 people and urged others to board up their homes as the hurricane drenched much of the region.
Forecasters warned that 15cm to 25cm of rainfall could cause "life-threatening flash floods and mudslides" while "large and dangerous battering waves" should be expected in areas close to the hurricane's path.
In the United States, tropical storm Ernesto swept through eastern North Carolina overnight at about 24kph with wind speeds up to 105kph and heading towards Virginia.
The storm hit North Carolina near hurricane strength late on Thursday, flooding some coastal areas in both Carolina states though there were no reports of casualties.
Ernesto had been forecast to reach the US mainland as a potential category three storm but was weaker when it landed onshore and by early Friday had done little damage.