Pues esos "notices" son los que están "molestando" a las cabeceras HTTP y por eso no te funciona.
Podrías poner el código que usas actualmente (ese que generea esos errores) y vemos como solventar el problema ..
En princpio se trataría de bajar el nivel de errores que PHP muestra para ese script al menos con la función:
error_reporting() (usala al principio de ese script)
Por ejemplo podrías usar:
error_reporting(E_ALL ^ E_NOTICE);
es decir . .que se muestren los errores "graves" pero no los "avisos" como esos "notice"
más info:
http://www.php.net/error_reporting
Pero, .. esos "notice" deberían ser solventados de otra forma . .por ejemplo usando funciones como isset() o empty() dependiendo del caso para dar valores por defecto o no acceder a variabels que no se han definido si corresponde.
O incluso sea un problema a la hora de recoger esa variable "str" .. por intentar accederla de forma global $str cuando debería ser tal vez $_GET['str'] y eso es lo que te está "avisando" ese error. (eso sucedería por usar código "viejo" no adaptado a los standares de "register_globals" ON de hoy por hoy que tal vez uses esa configuración en tus servidores. En tu caso está a ON así que toda variable debes accederla por sus arrays superglobales: $_POST, $_GET .. etc .. LEE las FAQ's de este foro .. de las primeras se comenta todo este tema )
Un saludo,