Rails https 站点使用 rails-kindeditor

ecloud · 发布于 2017年08月29日 · 最后由 ecloud 回复于 2017年08月29日 · 374 次阅读
96

本来网站是用的http,之后要求使用https,加上https之后,kindeditor上传功能彻底失效。我用chrome查看,发现kindeditor使用的路径还是http,有什么配置办法改变

goole到一个issue,好几年都没回复,特来请求rails大神解答。

共收到 6 条回复
2099

看源码,搞明白这个 gem 是如何生成上传的 url 的,看到你这个问题的时候,我去找了这个 gem 的源码,简单翻了一下源码,这是与你问题相关的关键源码

https://github.com/Macrow/rails_kindeditor/blob/master/lib/rails_kindeditor/helper.rb#L52-L58

调试一下,看你跑完这段代码的时候,生成的 url 的 schema 部分是否是你所期望的

同时注意配置:https://github.com/Macrow/rails_kindeditor#asset-host-options-configuration

最后,看一下你的 web(nginx/apache)配置是否正确,如 nginx

proxy_set_header   X-Forwarded-Proto  $scheme;

另外,再次贴上:https://ruby-china.org/topics/24325

96

app.root_url 默认会返回 http://www.example.com/

96

@w7938940 请问有什么办法可以自动识别http和https吗?

96
32ecloud 回复

试试在 production.rb 添加

config.action_controller.default_url_options = {
  host: 'yourdomain.com',
  protocol: 'https'
}
96

@w7938940 非常感谢,添加之后main_app.root_path变成了https://yourdomain.com

32 ecloud 关闭了讨论 08月29日 16:40
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册