Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/08/2008, 09:38
Avatar de moron
moron
 
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años
Puntos: 2
front controller- mostrar paginas

Estimadicimos:

Creé un front controller por donde pasa toda la actividad de mi aplicación, incluyendo control de usuarios, carga de clases, redirección, entre otras.

Este controlador también se encarga de mostrar las páginas que se le pidan
por ej. /index.php?pagina=pagina1.html&css=default.css

El hecho es que como la pagina que se abra tiene que pasar por el control de usuario que hace el controlador, quisiera que no se pueda abrir individualmente pagina1.html.
Es decir, si el usuario escribe dominio/pagina1.html debería negarle el acceso porque no pasó por control de usuario.

Estuve probando con rewrite rules del apache, pero no logro darle en el clavo.

creé un archivo index.HTACCESS con lo siguiente

Código:
RewriteEngine on
RewriteRule .* index.php
php_flag magic_quotes_gpc off
php_flag register_glob

entiendo que con esto no debería dejar pasar a un lado distinto que no sea el index, pero no funciona.

este es el codigo que me abre la pagina cuando se le pide:

Código PHP:
if(isset($_GET[pagina]))
    {
        
header("Cache-Control: no-store, no-cache, must-revalidate");
        require_once(
constPathViews."/".$_GET[pagina]);
        if(isset(
$_GET[css]))

        {
        echo
' <link href="../vistas/public/css/'.$_GET[css].'" rel="stylesheet" type="text/css">';
        }
    }
    else
    {

        
//cargo el portal
        
header("Cache-Control: no-store, no-cache, must-revalidate");
        require_once(
constPathStaticPagesPortal."/default.htm");
    } 

Muchas gracias desde ya