Foros del Web » Programando para Internet » PHP »

Evitar que descarguen los archivos de mi web

Estas en el tema de Evitar que descarguen los archivos de mi web en el foro de PHP en Foros del Web. Hola a todos, ahora vengo con otro problema ademas de el de internet explorer (en vez de mostrarme una imagen obtenida de una base de ...
  #1 (permalink)  
Antiguo 25/09/2010, 21:11
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Evitar que descarguen los archivos de mi web

Hola a todos, ahora vengo con otro problema ademas de el de internet explorer (en vez de mostrarme una imagen obtenida de una base de datos me intenta descargar el archivo php). El problema que ahora tengo o que mas bien me acabo de plantear es mas que para el sistema que desarrollo para mi pero tambien si es necesario lo aplico en el proyecto del trabajo y se trata de evitar que puedan ver o descargar cuando menos el archivo que realiza la conexion a la base de datos ya que este contiene la cadena de conexion(algun modo de guardar la info de conexion en algun lado que no sea visible pero si se pueda leer para que siga funcionando en la pagina por ejemplo). Tambien se me ocurre restringir el archivo a solo lectura pero no creo que sirva de mucho, lo ideal seria que no puedan verlo ni descargarlo pero que siga funcionando en la pagina.

Por cierto, si ya han hecho esta pregunta con otras palabras (ya que busque y no me daba resultados) entonces solo posteen el link y yo lo veo y si tengo dudas pregunto en ese tema o en este.

Gracias y disculpen tanto texto y molestia que ocasiono.
  #2 (permalink)  
Antiguo 25/09/2010, 21:46
Avatar de silvanha  
Fecha de Ingreso: marzo-2006
Ubicación: En mi mundo de sueños
Mensajes: 653
Antigüedad: 18 años, 1 mes
Puntos: 65
Respuesta: Evitar que descarguen los archivos de mi web

Bueno en general las páginas PHP, no soy vistas "realmente" por el usuario, es decir solo vemos lo que interpreta el navegador (esto imagino ya lo sabes) entonces, de cualquier manera no pueden ver el contenido, lo que se me ocurre es que crees un archivo "global" que contenga las variables que mencionas de la conexión, es decir crear un archivo de configuración..

Creo haber leído hace tiempo que hay formas de "bajar" los archivos de una página, pero creo que no se puede con los PHP.. o bueno en general con cualquiera que tenga programación, distinto a uno HTML.. (ya vendrá alguien a desmentirme)

saludots! y suert! =)
__________________
●•· No hay nada imposible..
●•· Vico-X.. ;)
  #3 (permalink)  
Antiguo 25/09/2010, 22:37
Avatar de bioxido  
Fecha de Ingreso: diciembre-2008
Ubicación: $_SERVER['PHP_SELF']
Mensajes: 601
Antigüedad: 15 años, 4 meses
Puntos: 21
Respuesta: Evitar que descarguen los archivos de mi web

Si es que entendí bien, podrias hacer lo siguiente:

Código PHP:

//Archivo blabla.php
$in_script true;
include(
"config.php");

//Archivo config.php
if($in_script){
//Coneccion a la base de datos,etc..
}else{
echo 
'Estas intentando entrar a un area restringida'

Espero haber sido de ayuda ;)

Suerte!
  #4 (permalink)  
Antiguo 25/09/2010, 23:42
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Respuesta: Evitar que descarguen los archivos de mi web

Silvanha, tienes razon, hice la prueba y no se puede (estando en el hosting, obvio que hago pruebas primero localmente), te regresa un archivo que trae info de la pagina del hosting pero nada que tenga que ver con mi archivo .php, debi probar esto primero y despues preguntar pero pense que no habia seguridad si no la implementabas. Y lo que me dices de crear un archivo de configuracion seria tener un archivo separado con las variables de conexion (mas bien solamente la cadena de conexion).

Yo tengo separado la parte visual (todo lo que es html) de el codigo php, a excepcion de cuando necesito mostrar informacion donde a fuerza o eso creo, tengo que leer el resultado de la consulta hasta que no haya registros por leer y esto tengo que ponerlo en la pagina con el html ya sea dentro de una tabla o cualquier otro elemento, no se si sea lo mas recomendable o todavia tener que separar la cadena de conexion en otro archivo cuando ya vi que al menos a simple vista no se puede ver o descargar paginas en php.

bioxido, creo estas correcto a lo que quiere decir Silvanha y pues ya lo expuse arriba de esto.

Gracias a los dos por su ayuda.
  #5 (permalink)  
Antiguo 25/09/2010, 23:53
Avatar de silvanha  
Fecha de Ingreso: marzo-2006
Ubicación: En mi mundo de sueños
Mensajes: 653
Antigüedad: 18 años, 1 mes
Puntos: 65
Respuesta: Evitar que descarguen los archivos de mi web

Pues es cuestión de comodidad tuya, si consideras que tu código esta más "encapsulado" en páginas ajenas a las que tienen HTML (se supone es una mejor practica y el código es más limpio), pues entonces hazlo.. ya sabes para gustos los colores ;)

Y que bueno que hayas probado, no hay mejor manera de aprender que haciendo las cosas.. y obviamente metiendo la pata, y no dudes en preguntar, después de todo, la intención es que a más de uno tu duda, le ayude también ;)

saludos! ;)
__________________
●•· No hay nada imposible..
●•· Vico-X.. ;)
  #6 (permalink)  
Antiguo 26/09/2010, 03:57
Avatar de OsSk4R  
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 17 años, 6 meses
Puntos: 74
Respuesta: Evitar que descarguen los archivos de mi web

Cita:
Yo tengo separado la parte visual (todo lo que es html) de el codigo php, a excepcion de cuando necesito mostrar informacion donde a fuerza o eso creo, tengo que leer el resultado de la consulta hasta que no haya registros por leer y esto tengo que ponerlo en la pagina con el html ya sea dentro de una tabla o cualquier otro elemento...
Haces bien. Una cosa es tener todo tu código PHP embebido junto a HTML (cosa que sería "incorrecta") y otra cosa es lo que tu haces. Tener en archivos aparte el código PHP y en el HTML tener el código PHP necesario. Así que realmente eso esta bien

Ahora bien, si te interesa tenerlo todo mejor ordenado, con más lógica, etcétera. Podrías hecharle una ojeada al patrón de diseño MVC


  #7 (permalink)  
Antiguo 26/09/2010, 08:42
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Respuesta: Evitar que descarguen los archivos de mi web

Gracias Silvanha.

DeFFeR, se utilizar el patron de diseño MVC pero en web se dificulta o al menos para mi se dificulta ya que no todo lo que me devuelve un metodo es directamente pasable a la vista, primero tengo que ponerlo en una variable y esa variable es la que me permite mostrar en una tabla por ejemplo el resultado de una consulta select.

Te pongo un ejemplo de lo que estoy haciendo.

Hay un formulario en otra pagina que es el que define la busqueda. Este formulario contiene un submit con nombre buscar.
Código PHP:
include ('modelo/conexion.php');

$_SESSION['original']="";

if(isset(
$_POST['buscar']))
{
    
$buscar=(isset($_POST['buscar']))?$_POST['buscar']:"";
    
$original=(isset($_POST['original']))?$_POST['original']:"";
    
$orden=(isset($_POST['orden']))?$_POST['orden']:"";
    
$publicacion=(isset($_POST['publicacion']))?$_POST['publicacion']:"";
    
$edicion=(isset($_POST['edicion']))?$_POST['edicion']:"";
    
$fecha=(isset($_POST['fecha']))?$_POST['fecha']:"";
    
$pagina=(isset($_POST['pagina']))?$_POST['pagina']:"";            

    
$busq= new Original($original,$orden,$publicacion,$edicion,$fecha,$pagina);
    
$Q=$busq->Buscar($buscar);
    if(
$Q!=null)
    {
    
$i=0;
    
$cont=0;
    
$noriginales=0;
    echo 
"<table class='centrartabla'>";    
        while(
$arr oci_fetch_assoc($Q))
        {            
            
$conteo=$arr['CO_ARCHIVO'];
            
$nombre=$arr['NOMBRE_ARCHIVO'];
            
$original=$arr['ORIGINAL'];
            
$orden=$arr['ORDEN'];
            
$fecha=$arr['FECHA'];
            
$pagina=$arr['PAGINA'];
            
$link'modelo/imagen.php?CO_ARCHIVO=' $arr['CO_ARCHIVO'];            
            
$_SESSION['original'][$i]=$link;
            echo 
$_SESSION['original'][$i];            
            if(
$cont==0)
                echo 
"<tr>";
            echo 
"<td class='celdas' colspan='2'><a href='mostrarimagen.php?id=$i' target='blank'><IMG src='$link'></a></td><td><b>"$conteo."</br>"$nombre."</br>" $original."</br>" $orden"</br>".$fecha."</br>".$pagina."</b></td>";
            if(
$cont==1)
            {
                echo 
"</tr>";
                
$cont=0;
            }
            else
                
$cont++;            
            
$noriginales++;
            
$i++;
        }                
    if(
$noriginales==0)
        echo 
"<h1>No se encuentra el o los originales, verfique los filtros de b&uacute;squeda.</h1>";    
    }
    else
    echo 
"<h1>No es posible realizar la b&uacute;squeda, llene al menos un filtro e int&eacute;ntelo de nuevo</h1>";

Como vez tengo una clase llamada Original que esta en el archivo conexion.php, es aqui donde se realiza la busqueda para llenar la tabla que se va formando con echos. Esta pagina solo tiene codigo php para formar la tabla y mostrar los datos, el detalle y es por lo que no se si sea MVC esto es que la $Q es la que recibe el resultado de la busqueda realizada en el archivo conexion.php y luego esa $Q es la que se recorre mientras haya registros por leer y va mostrando los datos.

El detalle de este pequeño sistema es que solo realiza busquedas en tablas de la base de datos y muestra los registros que coincidan con la busqueda, no hay altas, bajas ni cambios.

Edito esta parte: preguntaba si tener muchas variables de sesion es pesado para el servidor ya que por necesidad las estaba usando peroi acabo de ver que puedo evitarlas y utilizar una variable que ya tengo.

Gracias y disculpen que de una pregunta saque otra dos pero pues se me hace mejor si pueden solucionarlas aqui mismo para no abrir tantos temas.

Última edición por LOD_Fredy; 26/09/2010 a las 08:58
  #8 (permalink)  
Antiguo 26/09/2010, 11:53
Avatar de silvanha  
Fecha de Ingreso: marzo-2006
Ubicación: En mi mundo de sueños
Mensajes: 653
Antigüedad: 18 años, 1 mes
Puntos: 65
Respuesta: Evitar que descarguen los archivos de mi web

Soy yo o siento que te respondiste solo??? xD
__________________
●•· No hay nada imposible..
●•· Vico-X.. ;)
  #9 (permalink)  
Antiguo 27/09/2010, 21:09
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Respuesta: Evitar que descarguen los archivos de mi web

Cita:
Iniciado por silvanha Ver Mensaje
Soy yo o siento que te respondiste solo??? xD
De hecho no respondi esa pregunta, sino encontre otra solucion, sigo sin saber si afecta mucho al rendimiento de servidor el uso de muchas variables de sesion.
  #10 (permalink)  
Antiguo 27/09/2010, 22:10
Avatar de silvanha  
Fecha de Ingreso: marzo-2006
Ubicación: En mi mundo de sueños
Mensajes: 653
Antigüedad: 18 años, 1 mes
Puntos: 65
Respuesta: Evitar que descarguen los archivos de mi web

Pues no creo, en teoría esas variables de sesión solo se "anexan" a las URLS asociadas a tu aplicación cuando el usuario las utiliza..

El número de variables de sesión que se pueden manejar según el mismísimo manual de PHP, es arbitrario.. así que no creo que se pueda llegar a saturar el servidor

saludos..
__________________
●•· No hay nada imposible..
●•· Vico-X.. ;)
  #11 (permalink)  
Antiguo 29/09/2010, 17:38
 
Fecha de Ingreso: abril-2009
Mensajes: 341
Antigüedad: 15 años
Puntos: 3
Respuesta: Evitar que descarguen los archivos de mi web

OK, si el manual de PHP lo dice, habra que creerle XD. Gracias.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:54.