In the original script, the tourist was a Russian named Lewicki. When Forest Whitaker auditioned for a different role, Pete Travis was so impressed that he rewrote the tourist as an American and offered the role to him.
The studio originally wanted to shoot the entire film in Salamanca, Spain, but the local government refused to close the Plaza Mayor for nearly 3 months. Production was moved to Cuernavaca and Puebla, Mexico. Only the scenes filmed from the air were shot in Spain.
The explosion on the Plaza was filmed by fifteen different cameras.
The original script set the story in Madrid, but the producers wanted a more "exotic" location. The fact is revealed in some scenes, like the secret service guy who says they can't locate a single person among "5 or 6 million" (Madrid's population; Salamanca's is much smaller), or when the cop enters a Muslim neighborhood during the foot chase (Madrid has one, Salamanca doesn't).
When shooting was moved to Mexico, the production design team built a replica of Salamanca's Plaza Mayor, which is slightly smaller than the original.