On-page optimization is everything you do to your website to help Google to crawl, parse, and index it. Off-page optimization is everything else you do to market your website and build it’s brand. On page optimization tells google how relevant your page is to a certain keyword.
Basically, you want to have the keyword in your url, h1 tags, meta tags, title tag, image filenames, image alt descriptions, and a couple of times in your content. That will tell google that your page is about the keyword.
Off-page optimization is about getting backlinks from authority sites. Authority sites are the ones that have a lot of high quality backlinks to themselves.