Nani did not feature on United's pre-season tour of Asia and Australia after being given extra time off due to international commitments and a nasal problem, while Vidic was absent due to sciatica.
Goal exclusively revealed earlier in July that David Moyes has convinced Nani to remain at Old Trafford this summer and the Portugal international began staking his claim for a place in the starting XI this season.
|GOAL 50: THE TOP 10
|50/1||Nemanja Vidic is 50/1 with BetVictor to be the Premier League Player of the Month in August
Vidic looked comfortable on his return and the United captain made a strong interception to stop Max Clayton, after Crewe had lost Mathias Pogba to injury.
The hosts had two good opportunities to score early in the second half but Clayton's shot was saved by Sam Johnstone, with Byron Moore putting the rebound wide, before Lee Molyneux rattled the crossbar.
However, just moments later, Nani scored again as the ball broke kindly for him as he raced into the penalty area and the winger kept his feet to roll the ball into the back of the net.
Vidic was replaced by Ben Pearson in the 62nd minute and, two minutes later, Nani was taken off for compatriot Bebe.
Antonio Valencia also made his first appearance of pre-season ahead of United's friendly against AIK in Stockholm on August 6, before Rio Ferdinand's testimonial game against Sevilla at Old Trafford three days later.
Meanwhile, Crewe start their League One season against newly promoted Rotherham United on Saturday.