elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  chmod PHP no funciona
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: chmod PHP no funciona  (Leído 3,104 veces)
KateLibby

Desconectado Desconectado

Mensajes: 90



Ver Perfil
chmod PHP no funciona
« en: 5 Septiembre 2014, 10:01 am »

Hola, estoy intentando cambiar los permisos de un archivo desde un script, y no me funciona. Lo raro es que en otros sitios web, he aplicado el mismo script y sí ha funcionado.

¿Alguien sabría decirme a qué puede ser debido?


Código
  1. chmod("login.php",  0644);
  2. echo "Ya puede acceder normalmente";

Gracias!


En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.855



Ver Perfil WWW
Re: chmod PHP no funciona
« Respuesta #1 en: 5 Septiembre 2014, 17:59 pm »

Asegúrate de que el script tiene permisos para ejecutar el chmod.

Saludos


En línea

JorgeEMX
Ex-Staff
*
Desconectado Desconectado

Mensajes: 2.615



Ver Perfil WWW
Re: chmod PHP no funciona
« Respuesta #2 en: 7 Septiembre 2014, 22:06 pm »

Asegúrate de que el script tiene permisos para ejecutar el chmod.

Saludos

Más bien, yo diría, que se asegure que el archivo al cuál está ejecutando la acción (chmod) tenga los permisos necesarios. Generalmente, login.php debería tener el mismo propietario que ejecuta el script PHP (si es desde el navegador, el usuario de Apache).
En línea

KateLibby

Desconectado Desconectado

Mensajes: 90



Ver Perfil
Re: chmod PHP no funciona
« Respuesta #3 en: 8 Septiembre 2014, 09:45 am »

Hola, gracias por vuestras respuestas.

Le he dado permisos 777 al archivo que ejecuta el chmod, pero me sigue pasando lo mismo.

Una cosa que me he dado cuenta es que si miro los permisos del archivo login.php desde el programa cliente FTP, cuando actualizo el listado de archivos me salen durante unos instantes estos:

login.php rw-r--r--

pero después, sin hacer nada, en seguida se vuelve a quedar sin permisos.

¿Alguna idea?

Gracias.
En línea

MinusFour
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.529


I'm fourth.


Ver Perfil WWW
Re: chmod PHP no funciona
« Respuesta #4 en: 8 Septiembre 2014, 14:50 pm »

Hola, gracias por vuestras respuestas.

Le he dado permisos 777 al archivo que ejecuta el chmod, pero me sigue pasando lo mismo.

Una cosa que me he dado cuenta es que si miro los permisos del archivo login.php desde el programa cliente FTP, cuando actualizo el listado de archivos me salen durante unos instantes estos:

login.php rw-r--r--

pero después, sin hacer nada, en seguida se vuelve a quedar sin permisos.

¿Alguna idea?

Gracias.

Solo el dueño del archivo (y root) pueden modificar los permisos del archivo. Lo que necesitas hacer es encontrar el usuario con el que esta corriendo el apache y cambiar el dueño del archivo al que le estas haciendo chmod.

Si estás en Linux:

Código
  1. ps aux | grep apache2 | grep -v root | grep -m1 -v $(whoami) | awk '{ print $1 }'

Deberia regresarte el usuario de apache2, a menos que tu usuario sea root o el mismo que estas usando (no creo).

Después puedes cambiar el propietario del archivo (desde la misma carpeta del archivo):

Código
  1. sudo chown usuario login.php
En línea

KateLibby

Desconectado Desconectado

Mensajes: 90



Ver Perfil
Re: chmod PHP no funciona
« Respuesta #5 en: 9 Septiembre 2014, 16:47 pm »

Solo el dueño del archivo (y root) pueden modificar los permisos del archivo. Lo que necesitas hacer es encontrar el usuario con el que esta corriendo el apache y cambiar el dueño del archivo al que le estas haciendo chmod.

Si estás en Linux:

Código
  1. ps aux | grep apache2 | grep -v root | grep -m1 -v $(whoami) | awk '{ print $1 }'

Deberia regresarte el usuario de apache2, a menos que tu usuario sea root o el mismo que estas usando (no creo).

Después puedes cambiar el propietario del archivo (desde la misma carpeta del archivo):

Código
  1. sudo chown usuario login.php


¿Cómo puedo aplicar estos comandos? Es que sólo tengo acceso a los archivos mediante un cliente FTP. Allí tengo la opción de abrir una Consola, pero ya el comando PS me dice que no lo entiende.
En línea

MinusFour
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.529


I'm fourth.


Ver Perfil WWW
Re: chmod PHP no funciona
« Respuesta #6 en: 10 Septiembre 2014, 00:04 am »

No estoy seguro que se pueda establecer el dueño del archivo desde FTP, lo normal es usar SSH. Si tienes un panel de control web puede ser que te den la opción de cambiar el dueño del archivo. Claro que necesitarías averiguar el usuario del servidor HTTP.  El usuario de Apache2 en sistemas basados en debian por lo general es www-data.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
!!chmod y chown : carpeta apache server
GNU/Linux
bash 4 3,466 Último mensaje 15 Junio 2012, 02:01 am
por Makiaveluz
No funciona chmod +x para dar permisos
GNU/Linux
ithory 7 5,500 Último mensaje 20 Noviembre 2012, 15:57 pm
por adgellida
chmod aleatorio con program en c++
Programación C/C++
patilanz 7 3,838 Último mensaje 23 Junio 2015, 19:37 pm
por banwave_
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines