簡體   English   中英

使用font-awesome的Rails應用中的src-uri錯誤

[英]Wrong src-uri in rails app using font-awesome

我已經配置了要使用nginx和Phusion Passenger托管的Rails應用程序。 當我訪問位於http://hostname/vns/的站點時,一切正常加載,但是我看到請求的字體文件出現404錯誤:

open() "/sites/apps/assets/fontawesome-webfont-f1c2889911d212e1403b68eabc1a3a5
6.svg" failed (2: No such file or directory)

該應用程序位於/ sites / ruby​​-apps / application /中,而/ sites / apps / vns是指向/ sites / ruby​​-apps / application / public /的符號鏈接

當我查看rake assets:precompile生成的CSS時,我發現public / assets中有兩個application.css文件。

application.css具有在src:url中列出的正確路徑(“ /vns/assets/fontawesome-webfont.eot”)application-md5fingerprint.css沒有正確的路徑(“ /assets/fontawesome-webfont-009f6d1f667cc42c25e712ab3429cbc7.eot” )

根據到目前為止我試圖找出的結果,我應該使用RAILS_RELATIVE_URL_ROOT,但是到目前為止,當將它包含在production.rb文件中時,它似乎沒有任何影響,如下所示:

ENV['RAILS_RELATIVE_URL_ROOT'] = "/vns"

我的配置的相關部分:

http {
...
  passenger_root /usr/local/rvm/gems/ruby-2.0.0-p247/gems/passenger-4.0.10;
  passenger_ruby /usr/local/rvm/rubies/ruby-2.0.0-p247/bin/ruby;
  passenger_max_pool_size 10;
  passenger_pool_idle_time 0;

  passenger_log_level 0;
  passenger_debug_log_file /var/log/nginx/passenger.log;
...
}

server {
...
  passenger_base_uri /vns;

  location /vns {
    passenger_enabled on;
  }
...
}

如果有人能幫助我指出正確的方向來解決這一問題,我將不勝感激。

經過數小時的嘗試后,我發布了此問題,並在五分鍾后解決了自己的問題。 在這里為其他可能會發現此問題的人提供答案:

看來我未正確使用ENV ['RAILS_RELATIVE_URL_ROOT']。

當我將其移至資產預編譯行時,如下所示:

RAILS_RELATIVE_URL_ROOT='/vns' rake assets:precompile

一切都按預期完成。 我對Rails不夠熟悉,無法知道我在做什么錯,或者是否有更好的方法來解決此問題,但這已為我解決了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM