设为首页 收藏本站
查看: 1064|回复: 0

[经验分享] centos 下搭建ror开源框架spree

[复制链接]

尚未签到

发表于 2016-5-10 10:00:50 | 显示全部楼层 |阅读模式
  最近研究了下spree,一个购物网站的开源项目
  我的环境是Centos ruby1.9.3 rails3.2, 在这总结一下安装的步骤和一些错误的处理
  
  1. 之前安装好了rvm, 与spree安装无关, 所以省略掉
  
  2. rvm get head 更新下rvm  
  安装了很久, 最好更新下, 以免ror安装时有问题
  
  3. rvm install 1.9.3  
  此处不rvm的就不要看了
  
  4. 如果出现It seems your ruby installation is missing psych (for YAML output) 等提示
  需要执行a. rvm pkg install libyaml
  b. rvm reinstall 1.9.3 --with-libyaml-dir=/usr/local/rvm/usr/
  
  5. rvm use 1.9.3
  
  6. gem install rails
  
  7. 如果出现 Installing ri documentation for rails-3.2.13...
  file 'lib' not found
  Installing RDoc documentation for rails-3.2.13...
  file 'lib' not found
  需要执行 gem install rdoc
  
  8. a. ruby -v => ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-linux]
  b. rails -v => Rails 3.2.13
  这是ror安装完成
  
  9. gem install bundler
  
  10. gem install spree
  遇到 checking for libxml/parser.h... no 
  ----- libxml2 is missing.
  巴拉巴拉一堆的提示......
  需要执行  sudo yum install -y libxml2 libxml2-devel libxslt libxslt-devel
  
  11. gem install spree_cmd
  
  12. rails new mystore -d mysql 安装mysql版本, -d 可不加, 可换oracle postgresql等
  
  13. /etc/init.d/mysqld start 启动mysql
  
  14. 修改数据库配置等
  
  15. cd mystore 
  
  16. spree install
  会有几个提示,让你选择yes/no,无脑yes了,如果明白是什么意思,也可自行选择,但是建议默认吧,苦逼的试着跳过前两个选项, 后面会遇到一些麻烦,还是乖乖的默认了=.=
  a. 遇到Image magick must be installed
  sudo yum install ImageMagick-devel
  sudo yum install ImageMagick
  b. 如果没有安装git 
  sudo yum install git
  c. /execjs/runtimes.rb:51:in `autodetect'
  需要修改Gemfile 放开gem 'therubyracer', :platforms=>:ruby 的注释
  在这句之前加入gem 'execjs'
  之后重新执行spree install
  
  以上development环境应该没有问题了, rails s 启动就可以用了
  
  ===============production==================
  
  蛋疼的又去搞production环境
  用的是apache passenger, 所以先安装下passenger, apache的安装配置就不多说了
  
  18. gem install passenger
  passenger-install-apache2-module
  
  19. 在production发布时遇到 
  Deface: 1 overrides found for 'spree/layouts/spree_application'
  Deface: 'add_analytics_header' matched 1 times with 'head'
  Rendered /usr/local/rvm/gems/ruby-1.9.3-p392/gems/spree_core-1.3.2/app/views/spree/shared/_taxonomies.html.erb (34.1ms)
  Rendered /usr/local/rvm/gems/ruby-1.9.3-p392/gems/spree_core-1.3.2/app/views/spree/shared/_products.html.erb (47.5ms)
  Rendered /usr/local/rvm/gems/ruby-1.9.3-p392/gems/spree_core-1.3.2/app/views/spree/home/index.html.erb within spree/layouts/spree_application (91.5ms)
  Rendered /usr/local/rvm/gems/ruby-1.9.3-p392/gems/spree_core-1.3.2/app/views/spree/shared/_head.html.erb (3.3ms)
  Completed 500 Internal Server Error in 219ms
  
  ActionView::Template::Error (favicon.ico isn't precompiled):
  3: <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
  4: <meta content="width=device-width, initial-scale=1.0, maximum-scale=1" name="viewport">
  5: <%== meta_data_tags %>
  6: <%= favicon_link_tag image_path('favicon.ico') %>
  7: <%= stylesheet_link_tag 'store/all', :media => 'screen' %>
  8: <%= csrf_meta_tags %>
  9: <%= javascript_include_tag 'store/all' %>
  
  修改/config/envirments/production.rb  
  config.serve_static_assets = true
  config.assets.compile = true
  
  
  20. 修改Gemfile, 如果之前默认了spree_gateway和spree_auth_devise, 需要去掉关于git的部分
  gem 'spree_gateway'
  gem 'spree_auth_devise'
  重新bundle install
  
  21. 将项目中/public /log /tmp 等三个文件夹给予相应权限
  
  22. Spree::Config.set(:allow_ssl_in_production => false) 
  关掉ssl
  
  后续还会再完善, 先折腾这些好了.

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-215044-1-1.html 上篇帖子: CentOS 中用 tgt 作为 iSCSI Target 下篇帖子: MySQL安装方法集合(64bit CentOS)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表