Me aparecio cierto archivo (x.txt) en mi servidor con el siguiente texto "
hacked by Hmei7", quisiera que ayudaran a revisar mi codigo para saber si fue error mio en relacion al codigo php o si es error del servidor (y en ese caso hablarlo con mi proveedor).  
Este es el index: 
 Código PHP:
    <?php
error_reporting(E_ALL);
 
include('conf.php');
 
if (!empty($_GET['id']))
    $modulo = $_GET['id'];
else
    $modulo = MODULO_DEFECTO;
 
if (empty($conf[$modulo]))
        $modulo = MODULO_DEFECTO;
 
if (empty($conf[$modulo]['layout']))
        $conf[$modulo]['layout'] = LAYOUT_DEFECTO;
        
 
$path_layout = LAYOUT_PATH.'/'.$conf[$modulo]['layout'];
$path_modulo = MODULO_PATH.'/'.$conf[$modulo]['archivo'];
 
if (file_exists($path_layout))
    include( $path_layout );
else
    if (file_exists( $path_modulo ))
        include( $path_modulo );
    else
        die('Error al cargar el módulo <b>'.$modulo.'</b>. No existe el archivo <b>'.$conf[$modulo]['archivo'].'</b>');
?>    
  Este es el config: 
 Código PHP:
    <?php
 
define('MODULO_DEFECTO', 'home');
define('LAYOUT_DEFECTO', 'layout_default.php');
define('MODULO_PATH', realpath('./modulos/'));
define('LAYOUT_PATH', realpath('./layouts/'));
 
$conf['home'] = array(
        'archivo' => 'home.php',
        'layout' => LAYOUT_DEFECTO ); 
$conf['contacto'] = array(
        'archivo' => 'contacto.php' );
$conf['restaurantes'] = array(
        'archivo' => 'restaurantes.php',
        'layout' => 'layout_restaurantes.php' );
?>    
  Esto va en el layout (lo demas del layout es solo HTML): 
 Código PHP:
    <?
    if (file_exists( $path_modulo )) include( $path_modulo );
    else die('Error al cargar el módulo <b>'.$modulo.'</b>. No existe el archivo <b>'.$conf[$modulo]['archivo'].'</b>');
?>    
  Y en los modulos algo como esto (HTML): 
 Código PHP:
    <div>
            <img src="imagenes/bienvenida.jpg" width="687" height="403" alt="" />
        </div> 
    
  Y mi formulario de contacto que tambien es php es el siguiente (lo baje de un sitio por eso tiene comentarios): 
 Código PHP:
    <?php
if (isset($_POST['submit'])) {
 
    // Checamos si el Referer viene de nuestro sitio 
    $valid_hosts = array('www.algo.mx', 'algo.mx');
    $temp_referer = explode('/', $_SERVER['HTTP_REFERER']);
    if (!in_array($temp_referer[2], $valid_hosts)) {
        exit('Formulario para uso exclusivo de Algo </p></fieldset></div></body></html>');
    }
    
    
    /* Setear todas las variables */
    foreach ($_POST as $key=>$value) {    
        // Checamos algunas keys para prevenir spam/injections
        if (eregi('MIME-Version:', $value) || eregi('Content-Type', $value) || eregi('boundary=', $value) || eregi('<script', $value) || eregi("CC:",$value)) {
            exit('Error: Prohibido el SPAM </p></fieldset></div></body></html>');
        }
        
        $$key = $value;
    }
    
    
    /* Validacion*/
    
    // Chequear campos obligatorios
    $required_fields = array('nombre', 'email', 'comentario');
    foreach ($required_fields as $required_field) {    
        if (!isset($$required_field) || $$required_field == '') {    
            exit('Todos los campos son obligatorios </p></fieldset></div></body></html>');
        }
    }
    
    // Validar email
    if (!preg_match("/^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$/", $email)) {
          exit('El formato de e-mail ingresado no es valido </p></fieldset></div></body></html>');
    }
    
    /* Fin Validacion */
    
    
    // Mensaje
    $message =<<<EOD
FORMULARIO DE CONTACTO
 
Nombre: {$nombre} 
Email: {$email} 
Comentario: {$comentario} 
EOD;
    
    $to = '[email protected]';
    $subject = 'Contacto Algo';
    $headers = 'From: [email protected]' ."\r\n";
 
    mail($to,$subject,$message,$headers);
 
    exit('Enviado Correctamente </p></fieldset></div></body></html>');
 
} else {
    exit('No se puede acceder a este archivo directamente </p></fieldset></div></body></html>');
}
?>       Espero me puedan ayudar, ya que si me extraño la aparicion de ese archivo.