Hola a todos, lo que estoy haciendo es algo muy sencillo, pero se ve que tengo el día malo

(o que sé muuucho menos de lo que yo pensaba, que fijo que va a ser eso

).
Se trata de un formulario para meter datos en una base de datos access utilizando un asp.
Siguiendo un par de modelos que he encontrado en manuales, he hecho lo siguiente, pero no funciona, devuelve error 500 no encontrado página insertar.asp (que juro que está ahí).
Aquí dejo los códigos:
insertar.htm:
<HTML>
<HEAD>
<TITLE>Insertar.html</TITLE>
</HEAD>
<BODY>
<div align="center">
<FORM METHOD="POST" ACTION="insertar.asp">
Código<br>
<INPUT TYPE="TEXT" NAME="nombre1" size="20"><br>
Nombre<br>
<INPUT TYPE="TEXT" NAME="nombre"><br>
Apellidos<br>
<INPUT TYPE="TEXT" NAME="apellidos"><br>
<INPUT TYPE="SUBMIT" value="Insertar">
</p>
</FORM>
</div>
</BODY>
</HTML> insertar.asp:
<HTML>
<HEAD>
<TITLE>Insertar.asp</TITLE>
</HEAD>
<BODY>
<%
'Recogemos los valores del formulario
codigo=Request.Form("codigo")
nombre=Request.Form("nombre")
apellidos=Request.Form("apellidos")
'Instanciamos y abrimos nuestro objeto conexion
Set conn = Server.CreateObject("ADODB.Connection")
Conn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../data/base.mdb"))
'Ahora creamos la sentencia SQL
sSQL="Insert Into registro (codigo,nombre,apellidos) values ('" & codigo & "','" & nombre & "','" & apellidos & "')"
'Ejecutamos la orden
set RS = conn.Execute(sSQL)
<div align="center">Registro Insertado</div>
'Cerramos el sistema de conexion
rs.close
%>
</BODY>
</HTML>
MUCHAS GRACIAS A TODOS POR LA AYUDA