buenas, como dijo caricatos la mejor forma es mediante ajax, hay funciones que hasta te permiten cargar el contenido con efectos tipo fadein o rollin y mostrar la tipica barra de cargando aunque claro tendra que tener java activado.
hay otra forma de hacerlo claro sin java y tampoco es con frames jeje
es con formularios.
si asi es, me tope con esto hace tiempo y me saco de un gran aprieto en su momento, (atualmente uso java y pido al visitante que lo active si no lo tiene) .
consiste en esto basicamente:
<form ="enlacedelink.php" target="contenido"><imput type="submit"></form>
<iframe width="200" height="300" class="estilodelmarco" id="contenido">
al hacer esto podras evitar usar marcos fijos y podras mover tu contenido por donde quieras cambiendo solo uuna linea de tu codigo.
Cita: para tener buen "feeling" con los buscadores, es mejor tener páginas distintas para contenidos distintos
definitivamente si pero con el metodo que te estoy planteando esto no es problema puesto que el head esta igual y sigue siendo accesible desede el exterior, sin abundar hasta puedes elegir si mostrar o no un encabezado segun si es tu formulario quien llama la web o es llamado de forma directa por un visitante con un simple
if de php y un echo espero te sea util mi respuesta.
solo te planteo un metodo alternativo pero recomiendo usar java, si te interesa el tema dime y veo de facilitarte algo de codigo saludos.