Jose Java Posted September 24, 2021 Share Posted September 24, 2021 Hola, llevo buscando bastante tiempo información en Internet sobre esto y no he encontrado ninguna solución. Tengo un programa en Java para PC de gestión de tiendas y lo estoy integrando con PrestaShop para poder subir artículos del programa a PrestaShop, grabar nuevas categorías y marcas, etc. No estoy utilizando webservices, estoy accediendo directamente a la BBDD MySQL y al sistema de archivos del servidor mediante FTP. Para FTP he creado un usuario en el servidor y lo he metido dentro del grupo www-data. Funciona todo perfectamente menos cuando borro el caché desde mi programa o desde la consola PrestaShop y luego refresco la página me vuelve a generar las carpetas y archivos del caché pero con permisos 755, o sea, que el grupo no tiene permisos de escritura, solo el propietario que en mi caso es el usuario www-data. Pongo un ejemplo: la carpeta de caché del menú principal de la web está en var/cache/prod/ps_mainmenu y tiene permisos 775 asignados por mí desde la consola de Linux. Si elimino caché y refresco la página web entonces se vuelven a generar las carpetas y archivos del caché dentro de ps_mainmenu pero con permisos 755, con lo cual mi usuario FTP que he creado para poder realizar estas operaciones de borrado de caché en remoto no puede borrar ni la carpeta ni el archivo que contiene a no ser que yo vaya al servidor y con la orden "chmod -R 775 ps_mainmenu" vuelva a poner los permisos de escritura del grupo y entonces sí que me deja borrar el caché en remoto desde mi programa pero solo una vez, cuando se actualice la página web se vuelven a crear otra vez las carpetas y archivos caché dentro de ps_mainmenu con permisos 755, y vuelta otra vez a empezar. Ye he probado dentro de linux con comandos como "umask 0022", "chmod g+w", "chmod g+s" y algún otro, pero la herencia en este caso no funciona. Sospecho que PrestaShop al actualizar caché está poniendo sus permisos a las carpetas y archivos que genera y le quita el permiso de escritura W al grupo. Hay un paquete ACL que se puede instalar en linux y según comentan con este paquete la herencia funciona siempre, pero esta solución no me convence porque el día que tenga mi programa instalado en más tiendas tendré que contactar con cada administrador del servidor donde esté alojado su servidor web PrestaShop para que instale este paquete en su servidor, y esto no sé si será posible en todos los casos. Dentro de PrestaShop no he encontrado ningún parámetro para esto y eso que he googleado bastante. Quizás haya algún parámetro dentro de PrestaShop para decirle que cuando vuelva a generar el contenido del caché que le asigne a las carpetas dentro del caché el permiso de escritura al grupo. A ver si alguien me puede ayudar. Gracias. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now