前言
在使用jekyll的时候,如果本地的文件是中文,在预览的时候会无法预览,这是因为文件路径的编码问题导致找不到文件,这里我在谷歌找到了解决方法,原文连接:
http://blog.leiyinchun.com/2016-05/jekyll_local_chines_filename.html
原文转载
jekyll 目前支持 _post 目录下多级目录和中文路径,但本地预览时,如果markdown文件名是中文的,会导致无法无法访问。
解决办法:
修改安装目录\Ruby22-x64\lib\ruby\2.2.0\webrick\httpservlet
下的filehandler.rb
文件,建议先备份。
找到下列两处,添加一句( + 的一行为添加部分)
path = req.path_info.dup.force_encoding(Encoding.find("filesystem"))
+ path.force_encoding("UTF-8") # 加入编码
if trailing_pathsep?(req.path_info)
break if base == "/"
+ base.force_encoding("UTF-8") # 加入編碼
break unless File.directory?(File.expand_path(res.filename + base))
然后重启服务器即可jekyll clean && jekyll s