What is front-end rendering? What is server-side rendering? What are the differences and application scenarios between the two?

  javascript, node.js

I’m just writing SPA in the front end with a framework now, and then the back end is just processing the data related to the database and passing the data back and forth through the restful API. As for these renderings, there is no concept.
The so-called server-side rendering refers to generating html files in the background and sending them to the front end. What about react and Vue, which introduce virtual DOM?
What does front-end rendering mean, parsing html to generate DOM trees and then drawing pages?
Front-end rendering and client-side rendering mean the same thing, right?
What are the front-end rendering and server-end rendering application scenarios?