Evite que el script Ruby requiera una carpeta con 777

Evite que el script Ruby requiera una carpeta con 777

Estoy ejecutando un script Ruby que contiene

unless File.writable?(".")
    problems << ["Directory /path/to/htdocs needs write access"]

el problema es que solo si configuro

chmod 777 /ruta/a/htdocs

Funciona, pero leí que en realidad no deberías 777 hacer nada.

Entonces, ¿cómo puedo evitar este problema para que el código se ejecute con 755 en lugar de 777?

Respuesta1

Nunca es necesario utilizar 777. Sin embargo, puedes averiguar cuál es el problema:

  • si funciona con 777 y no con 770, estás utilizando un usuario desconocido en tu entorno. Cambie a un usuario conocido y funcionará con 770.
  • si funciona con 770 y no con 700 estás usando un grupo desconocido en tu entorno. Misma solución: configure el entorno en un grupo conocido.

Entonces, apache2, nginx o cualquier cosa que uses para ejecutar scripts tendrán un usuario y un grupo configurados en su configuración. Encuentre el usuario y el grupo utilizados y cambie su secuencia de comandos a ese usuario y grupo y todo lo que necesitará es 700 o 750.

información relacionada