Rails 3 uygulamam ile xsendfile kullanarak bir sorunla karşılaşıyorum.Sembolik bağlantılar içeren mod_xsendfile
Dağıtımları yönetmek için capistrano kullanıyorum ve her sürümde, paylaşılan/varlıklar dir (örneğin/var/www/site/sürümleri/1234/varlıklar =>/var/www/site) için sembolik bir bağlantı var./paylaşılan/varlıklar). Sorun şu ki XSendFile sembolik bağları takip etmiyor gibi görünüyor. Sonra
XSendFilePath /var/www/site/releases
herşey: Ben config geçerseniz
The given path was above the root path: xsendfile: unable to find file: /var/www/site/releases/20110406205607/assets/pdfs/2/original/test.pdf
Ben XSendFilePath yapılandırma
XSendFilePath /var/www/site/shared/assets
olarak belirledik: Benim apache günlükleri, ben aşağıdaki hatayı görüyorum iyi çalışıyor.
1) XSendFilePath sembolik bağlantıyı takip yapmak için bir yolu var mı: Ben birkaç soru var?
2) benim bültenleri dir XSendFilePath ayarı ile bir güvenlik riski var mı? Diğer bir deyişle, tüm bu direklere erişimi açabilir miyim? Bu XSendFilePath kök yolunun içine koyar /var/www/site/current/assets
olarak bağlantıya bakın yapar
task :storage_link, :except => { :no_release => true } do
run "ln -nFs #{deploy_to}/shared/assets #{latest_release}/assets"
end
:
Cevabınız için teşekkürler. Bu projeden geçtim ama cevabınız kesinlikle mantıklı. – bostonou
Bu, "Pathname # realdirpath" kullanılarak sembolik bağlantıyı çözene kadar bizim için çalışmadı. 'Pathname # realdirpath' kullanırken bile –
O benim için çalışmıyor :( – wrzasa