Página 1 de 1

Como Limitar El Acceso Al Foro (no Es Lo Que Parece Leedlo)

Publicado: 23 Jul 2008, 12:28
por LORD DANIX
Si, no es lo que parece.
Primero de todo datos para el soporte.
URL del foro: http://www.loscansados.com/phpbb2/index.php URL de la web: http://www.loscansados.com
Plantilla(s) usuada(s): subsilver
MODs instalados: rss (mal instalado) y el humanizer
Versión de phpBB: 2.0.23
Servidor: aruba.it de pago
Si es una actualización desde otra versión: no recuerdo la versión anterior (soy un poco desastre para llevar las cosas controladas)

Este es el foro de fans de El Cansancio a quienes conocereis mejor por que uno de sus miembros Berto Romero, presenta ahora Buenafuente ha salido un momento.

Cuando digo que no es lo que parece, me refiero a que no quiero limitar ninguna entrada de users ni nada de eso. Quiero restringir de alguna manera el acceso por links, mejor dicho que la gente solo pueda entrar al foro a traves de mi web. Y que los blogs y webs que tienen lincado el acceso a mi foro, tengan que cambiar el link a la web en lugar de al foro.
no se si me he explicado bien, si teneis dudas decidme please.
muchas gracias

Re: Como Limitar El Acceso Al Foro (no Es Lo Que Parece Leedlo)

Publicado: 24 Jul 2008, 03:20
por mitch
LORD DANIX, hola

mira, prueba con esto. En include/session.php
Buscar (es la primera linea):

Código: Seleccionar todo

<?php
Agregar despues:

Código: Seleccionar todo

$referers = array (
'www.mipagina.com',
'mipagina.com',
);

function check_referer($referers) {

    if (count($referers)==0) return false;
    $found = false;
    $temp = explode("/",getenv("HTTP_REFERER"));
    $referer = $temp[2];
    if ($referer=="") {
   $referer = $_SERVER['HTTP_REFERER'];
        list($remove,$stuff)=split('//',$referer,2);
        list($home,$stuff)=split('/',$stuff,2);
        $referer = $home;
    }
    if (empty($referer)) {
   if ((!$_POST) && (empty($_SERVER["QUERY_STRING"]))) return true;
    }
    for ($xx=0; $xx<count($referers); $xx++) {
   if ($referer==$referers[$xx]) return true;
    }
}

$ver_referer = check_referer($referers);
if ($ver_referer != 'true') {
header ("Location: http://www.google.com");
}
En este código que agregas, arriba, donde dice www.mipagina.com y .mipagina.com, pues pones la tuya, con y sin "www" (sin ninguna otra ruta, como /foro/ ni nada.. solo tu web). Esto es para ver que la gente que vaya al foro, provenga de tu mismo sitio y no de otro lugar.
Y casi al final fijate que dice

Código: Seleccionar todo

header ("Location: http://www.google.com");
Eso lo que hace es que, si alguien viene desde un enlace "externo", lo envía a google.. allí podrías colocar la página de tu web inicial, desde donde quieres que ingresen tus usuarios al foro.

Bueno, eso... no se si será de gran utilidad, tu revísalo y pruebalo y ve como funciona. salu2

PD: sacado de http://www.cristalab.com/foros/p130019.html y modificado/testeado por mi en local.

Re: Como Limitar El Acceso Al Foro (no Es Lo Que Parece Leedlo)

Publicado: 24 Jul 2008, 10:19
por LORD DANIX
Muchisimas gracias por la rapidez.
Lo pruebo y comento que tal ha ido.
Muchas gracias otra vez.