In a large skillet over medium heat, cook bacon until crisp.
Remove from pan, break into 1/2 inch pieces, and set aside.
Drain bacon grease, and return pan to heat.
Saute onions over medium heat until tender. Stir in garlic and cook 1 minute more. Stir in bacon and tomatoes. Cover, reduce heat and simmer 15 to 20 minutes.
Meanwhile, bring a large pot of lightly salted water to a boil.
Add pasta and cook for 8 to 10 minutes or until al dente; drain.
Stir basil, oregano and parsley into tomato sauce.
Add salt and pepper to taste. Cook 5 minutes more. Toss with hot pasta. Top with grated Parmesan cheese when serving.