centos 6.5中搭建gitlab
在wiki中上传了html,想通过gitlab直接预览html
但是css、js、img元素都加载失败,通过浏览器控制台发现报错:
错误信息,大致原因分析如下:
gitlab 是用了ruby的rails框架,rails里面开启了CSP安全策略,默认不会在html中加载任何css、js等资源
最终在gitlab某个目录下找到了配置文件,我这里的路径是这样的:
/opt/gitlab/embedded/service/gitlab-rails/app/controllers/projects/wikis_controller.rb
里面有这样两行代码:
response.headers['Content-Security-Policy'] = "default-src 'none'"
response.headers['X-Content-Security-Policy'] = "default-src 'none'"
将两行中的none,改成self,意思是将默认不加载资源文件,改成可以加载同源资源,具体请参考CSP文档
然后重启了gitlab,包括rails服务,也要重启。
gitlab-ctl stop
gitlab-ctl start
gitlab-ctl reconfigure
问题解决