2015-11-19 1 views
2

Je tente de déployer l'application Rails sur le serveur. Mais j'ai eu cette erreur quand la page Web s'exécute. J'ai fait beaucoup de recherche sur ce problème, et la plupart d'entre eux sont de changer la permission. Mais je ne peux absolument pas changer l'autorisation dans le dossier .socket. Si quelqu'un sait comment résoudre ce problème, aidez-moi s'il vous plaît. MerciArgumentError: le répertoire parent est accessible en écriture, FileUtils # remove_entry_secure ne fonctionne pas

parent directory is world writable, FileUtils#remove_entry_secure does not work; abort: "/.socket/fcgi/passenger-native-support-d8m77l" (parent directory mode 40777) (ArgumentError) 
    /.socket/ruby/rubies/ruby-2.2.2/lib/ruby/2.2.0/fileutils.rb:716:in `remove_entry_secure' 
    /.socket/passenger/lib/phusion_passenger/utils/tmpio.rb:72:in `ensure in mktmpdir' 
    /.socket/passenger/lib/phusion_passenger/utils/tmpio.rb:72:in `mktmpdir' 
    /.socket/passenger/lib/phusion_passenger/native_support.rb:147:in `download_binary_and_load' 
    /.socket/passenger/lib/phusion_passenger/native_support.rb:49:in `start' 
    /.socket/passenger/lib/phusion_passenger/native_support.rb:405:in `<top (required)>' 
    /.socket/ruby/rubies/ruby-2.2.2/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require' 
    /.socket/ruby/rubies/ruby-2.2.2/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require' 
    /.socket/passenger/lib/phusion_passenger.rb:237:in `require_passenger_lib' 
    /.socket/passenger/helper-scripts/rack-preloader.rb:75:in `init_passenger' 
    /.socket/passenger/helper-scripts/rack-preloader.rb:157:in `<module:App>' 
    /.socket/passenger/helper-scripts/rack-preloader.rb:29:in `<module:PhusionPassenger>' 
    /.socket/passenger/helper-scripts/rack-preloader.rb:28:in `<main>' 

Répondre

5

Ceci est un problème connu avec passager. Essayez cette chmod o+t -R /tmp

En savoir plus sur le bit collant ici: https://askubuntu.com/questions/432699/what-is-the-t-letter-in-the-output-of-ls-ld-tmp

+0

J'ai vu cette solution beaucoup. le problème est l'erreur ne pointe pas vers le dossier tmp, et aussi je n'ai pas la permission de changer ce dossier. –

+0

C'est dommage, car la correction de ce problème connu nécessite de pouvoir changer les permissions. Il y a plus ici à propos de ce problème: https://github.com/phusion/passenger/issues/1292. J'espère que vous trouverez un moyen de surmonter ce problème. – Elvn

0

Faire sudo chmod o-w tmp/ a fonctionné pour moi Cela supprime les autorisations inscriptibles du monde pour le répertoire