Do you own this webserver, or is it hosted by someone else?
Also, in contact_form.php, you used the short-tag opener <? when your server does not support it. Use the full <?PHP tag instead.
EDIT: In addition, you have some HTML headers above your PHP code, but then you expect to use a [man]header/man call later. Remove all of the HTML above the PHP code.
EDIT2: To try and resolve the 405 error, try creating a .htaccess file in the root of your web directory that looks like this:
<Limit POST>
Order allow,deny
Allow from all
</Limit>