最近在是使用egg框架开发微信公众号时,发现在根目录放置校验文件无法被访问到。经过查阅,目前有以下两种方式
使用nginx做转发
把文件名作为路由地址,通过fs模块读写返回数据流
但以上两种方式都比较麻烦,egg作为阿里的企业级开发框架。不可能不支持配置直接访问的静态文件。虽然文档上没有写出来,但通过查阅github上的例子发现config对象下有提供siteFile这个属性,可以用来配置静态文件访问。
代码如下:
config.confusedConfigurations = {
sitefile: 'siteFile'
};
config.siteFile = {
'/a.txt': fs.readFileSync(path.join(__dirname, '/a.txt')),
};
注:a.txt的位置可以自定义,这里我是把a.txt放到了config目录下。
通过这个配置就可以实现在根目录直接访问指定文件。