文件系统是 utf-8 编码么?非 windows 一般没问题的
如果 windows 的话,假如你要访问 public/中文.html , 那么访问路径可以这么算出来:
require 'cgi'
CGI.escape '中文'.encode('gbk') #=> "%D6%D0%CE%C4"
访问路径应该就是 /%D6%D0%CE%C4.html
了... 但好像还有浏览器请求编码的问题,好久没用 windows 想不起来了...
应该是在 web 服务器配的 ssl 吧?
nginx 的话可以 sudo nginx -t -c 你的nginx.conf
看看配置文件什么地方有问题
bbcode 比 markdown 更看不懂还不是一堆论坛在用...
必须 +1
#46 楼 @kgen 你有哪些网站,我可以给你演示下... 问题就是嵌入 xml 的 yaml 可以执行某些代码,不用 eval 也可以的,是 yaml 的特性口牙!
#45 楼 @iBachue 1.8 也不回收 Symbol. Symbol 的问题以前就修过了,解析参数默认是不产生 Symbol 的。Symbol 内存溢出和上次的 find_by_id
没有关系...
造成内存溢出的攻击方法是造 xml 请求,xml 中嵌入 yaml, yaml 中写 Symbol:
<?xml version="1.0" encoding="UTF-8"?>
<b type="yaml">
<![CDATA[---
:a:
:ab:
:ac:
:ad:
:ae:
...
]]></b>
你说的是上次的吧?操作系统每隔几天更新一些修复漏洞的补丁,人们就死个好几十次...
#23 楼 @shooter 应该是 post 请求的 content-type
(注意不是 accept
) 为 xml 而且请求体的 xml 里面又嵌入了 yml 的话,yml 中就可以执行 SomeClass.new
或者 Class.new{include SomeModule}.new
要修改请求的 content-type
不能在浏览器里上做,大概要这样:
curl -H'content-type: application/xml' --data '<?xml version="1.0" encoding="UTF-8"?>
<b type="yaml"><![CDATA[--- !ruby/object:ActiveRecord::Base {}]]></b>' some.site/post-url
当然还要加上 cookie 或者 csrf 等参数,挺麻烦的...
如果看存储格式的话,就只有 psd 等图形处理软件的格式支持 CMYK 存储,一般 gif, jpg, png 都是调色板或者 RGB 存储的。
如果是说统计像素,分析图片的色彩空间的话,还分为 sRGB, 设备 RGB, 校正 RGB, 设备 CMYK, 非设备 CMYK ... 要看实际情况选用...