Ver Mensaje Individual
  #5 (permalink)  
Antiguo 23/08/2006, 12:04
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Cita:
He aquí una sorpresa que no me esperaba. Por lo que tengo entendido el usuario/grupo que ejecuta un script .php en un hosting en el mismo usuario/grupo que ejecuta el servidor web, y si esta compartido, por muy restrictivos que sean los permisos que le ponga, los otros clientes del hosting usan el mismo usuarios/grupo que el servidor web, o sea, mis archivos al lado de ellos son debieran ser igualmente visibles. Si es posible hacer que apache (u otro servidor) se ejecute como tal usuario de una carpeta hacia adentro (creo que con iis se puede), me gustaría saber como.
Para eso PHP se puede configurar como "Safe mode":
http://www.php.net/features.safe-mode

Este modo de trabajo suele dar problemas a usuarios de PHP que no tienen muy claro los conceptos del "propietario" del archivo .. en consecuencia muchos proveedores de servicios de hosting se ven "presionados" a no usar "safe mode" a pesar de los problemas de seguridad que puede conllevar esto. (Hacen el comentario hasta en PHP.net en el primer párrafo de introducción al "safe mode").

Los problemas que describes son por qué PHP se instaló principalmente como "módulo del servidor HTTP" ... es decir, PHP queda compartido para todo usuario que use el servidor HTTP bajo el usuario que corre este último. Eso mejora el rendimiento de PHP pues queda el interprete PHP "residente" en memoria del servidor a la espera de una petición de un script PHP que interpretar, esto consume algo más de memoría del servidor constante pero no pierde tiempo en "levantar" PHP (el interprete) y "bajarlo" cuando termina la ejecución de tu script PHP (como sucede en modo CGI).

Otro tipo de instalación de PHP es como "CGI" (así se suele instalar en otros servidores HTTP no-Apache .. por ejemplo en IIS). En ese caso cada script PHP "levanta" al interprete cuando se pide un .php que ejecutar a tu servidor HTTP .. En este caso las configuraciones de PHP y el usuario que ejecuta tu script PHP es el que se define en forma individual para cada usuario (de un supuesto servidor "compartido").

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.