redmine wk_time(时间和费用)插件通过https? / javascript http内容已被屏蔽

时间:2014-10-30 11:46:29

标签: plugins https redmine

我得到了:
Redmine v:2.3.1.stable
插件redmine_wktime v:1.5

访问wktime插件时,javascript会出错:

[blocked] The page at 'https://my.redmine.site/issues/5' was loaded over HTTPS, but ran insecure content from 'http://my.redmine.site/wktime/getStatus?startDate=2014-10-30': this content should also be loaded over HTTPS.

问题是如何配置wk_time插件以加载https?

routes.rb文件中有一些配置,如:

get 'wktime/getStatus', :to => 'wktime#getStatus'

但是如何设置(rake?)它通过https加载wk_time插件?不知道routes.rb文件是否适合这样做。

redmine.org上有人提出过类似的问题,但仍然没有安装(http://www.redmine.org/boards/2/topics/41459

任何建议都非常感谢。
亲切的问候!

2 个答案:

答案 0 :(得分:3)

来自{redmine] \ plugins \ remine_wktime \ assets \ javascripts \ wkstatus.js中的wktime/getStatus函数的showEntryWarning请求的网址

它从redmine_wktime插件的init.rb文件中的下面提到的部分派生了URL。

def showWarningMsg(req)     
    wktime_helper = Object.new.extend(WktimeHelper)     
    host_with_subdir = wktime_helper.getHostAndDir(req)             
    "<div id='divError'><font color='red'>#{l(:label_warning_wktime_time_entry)}</font> 
        <input type='hidden' id='getstatus_url' value='#{url_for(:controller => 'wktime', :action => 'getStatus',:host => host_with_subdir)}'>  
    </div>"     
end

因此您可以在此处看到它调用名为url_for()的方法。此方法返回生成的URL。此url_for()方法位于名为actionpack的gem中。实际上url_for()方法返回提供的一组选项的URL。如果我们指定&#34;主机&#34;在传递给url_for()的选项中,它不返回相对路径,而是返回一个协议为http的url。因此,请更改init.rb文件中的代码,如下所示。 [删除url_for()方法调用中的host => host_with_subdir参数。

def showWarningMsg(req)     
    wktime_helper = Object.new.extend(WktimeHelper)     
    host_with_subdir = wktime_helper.getHostAndDir(req)             
    "<div id='divError'><font color='red'>#{l(:label_warning_wktime_time_entry)}</font> 
        <input type='hidden' id='getstatus_url' value='#{url_for(:controller => 'wktime', :action => 'getStatus')}'>    
    </div>"     
end

然后redmine将从请求协议中获取url的协议。您的内容将通过https:D

加载

答案 1 :(得分:0)

如果在Time&amp;费用1.8,请参阅http://www.redmine.org/plugins/wk-time