SQLite数据库在本地可以写,发布到服务器就不能写
用SQLite开发的一个Web Api,提供Json和Jsonp格式的数据,在本地使用vs2012开发并运行时,数据库的读写均正常。
但发布到Windows Server 2008 + IIS 7.5,SQLite数据库只可读,不可以写,也没有任何的错误信息出现。
对App_Date文件夹及里面的数据库,均使用安全将Everyone和Network Service用户设置为对本文件夹及文件的所有权限,但仍然不可以写。
最后,尝试进入IIS的配置,对整个网站进行配置,结果发现一个设置权限的一个用户为:IIS Users,这个用户没有修改和写入的权限,将这个用户设置为可以“修改”和“写入”,再试,问题解决。
原来问题在这里。
不过,对整个网站配置可以进行修改和写入,风险太大,现在将粒度减小。仍然把网站根目录设置为: IIS Users无“修改”与“写入”权限,只将数据库所在的目录App_Date设置为IIS Users有“修改”与“写入”权限,成功!