I believe that should work for you. Otherwise check the server error log. The 500 error could be another issue, but more than likely it was due to permissions.
Welcome. The other two conditions specify to only rewrite the request if a file or directory by the same name does not exist. Also note that I removed the / from in front of index.php in the RewriteRule.
Thanks for the help earlier. I just need another adjustment so it's working perfectly. I want all my pages to show up as .html.
index.php?page=home now shows up as home.html but i also want contact.php to show up as contact.html, just to keep the site consistant. Any thoughts?