In Need of HELP, Please Someone help me!

I am sure this is an easy thing for most of you on here. I am new to this and I can’t seem to get my head wrapped around all this! So I am here asking for someone to please help me.

I am trying to satisfy Google Page Speed and Yslow! So here is what I have come up with, Please let me know if I am doing this right or not. I have been searching high and low but only getting bits and pieces. It seems to satisfy both google and yslow but is it correct. At the bottom i had to comment out Header unset Last-Modified because Google and yslow did not like it. Please remember I am new at this and its like speaking another language to me.

ExpiresActive On
 # Set Expires header to current time by default
	ExpiresDefault A31449600
	
 <FilesMatch "\\.(ico|gif|jpg|png|jpeg|js|css|swf|bmp)$"> #1 year
   Header set Cache-Control "max-age=31449600, public"
 </FilesMatch>

 <FilesMatch "\\.(txt|xml)$"> #2 days
   Header set Cache-Control "max-age=172800, public, must-revalidate"
 </FilesMatch>
 
 <FilesMatch "\\.(html|htm)$"> #4 Hours
  Header set Cache-Control "max-age=14400, must-revalidate"
 </FilesMatch>
 
 <FilesMatch "\\.(js|css|html|htm|php|xml)$">
   SetOutputFilter DEFLATE
   BrowserMatch ^Mozilla/4 gzip-only-text/html
   BrowserMatch ^Mozilla/4\\.0[678] no-gzip
   BrowserMatch \\bMSIE !no-gzip !gzip-only-text/html
 </FilesMatch>
 
 <FilesMatch "\\.(ico|gif|jpg|css|png|js|jpeg|flv||swf|pdf)(\\.gz)?$">
   Header unset ETag
   FileETag None
 </FilesMatch>
 
# Turn off the Last Modified header except for html docs
# <FilesMatch "\\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css)$">
#  Header unset Last-Modified
# </FilesMatch>