在使用Sql Server Compact处理web.config时,访问被拒绝

我刚刚部署了一个ASP.NET MVC3站点到一个新的主机。 它正在使用Plesk控制面板。 该网站使用Sql Server Compact 4.0和EricEJ的Sql Server Compact成员和angular色提供程序 。

当试图访问该网站,我得到一个访问被拒绝错误的web.config文件,我添加SqlCeMembershipProvider:

说明:处理为请求提供服务所需的configuration文件时发生错误。 请查看下面的具体错误细节,并适当修改您的configuration文件。

parsing器错误消息:访问被拒绝。 (从HRESULTexception:0x80070005(E_ACCESSDENIED))

源错误:

Line 31: <clear /> Line 32: <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" /> Line 33: <add name="SqlCeMembershipProvider" type="ErikEJ.SqlCeMembershipProvider, ErikEJ.SqlCeMembership" connectionStringName="SqlCeServices" applicationName="/" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="true" passwordFormat="Hashed" writeExceptionsToEventLog="false" /> Line 34: </providers> Line 35: </membership> 

SqlCeServices连接string是这样configuration的:

 <connectionStrings> <add name="SqlCeServices" connectionString="data source=|DataDirectory|\SqlCeAspnetdb.sdf" /> </connectionStrings> 

当我进入Plesk控制面板中的“文件pipe理器”,点击“App_Data”文件夹的“更改权限”时,所有可以configuration的用户都具有写入和修改权限:

app_data的权限

虽然,当我点击“高级”button,这是我看到:

app_data的高级权限

“Plesk IIS WP用户(IWPD_321)”底部的条目具有所有权限。 但显然,在同一用户上面还有两个附加条目。 这些没有写入权限,但是我为这两个更改所做的任何更改都不会被保存。 当我回到屏幕时,他们再次显示(没有写入许可)。

我不知道我可以做什么,或者我必须要求托pipe服务台解决这个问题(他们似乎没有Sql Server Compact的经验)。

我试图从web.config中删除使用SqlServerCe连接string的行,然后我可以运行该网站,但我不能创build(注册)用户或angular色,因为我没有Sql Server数据库。

有关下一步尝试的build议?

我find了解决scheme。 我需要为“Plesk IIS WP用户(IWPD_321)”用户的\ bin文件夹及其所有子对象添加“读/执行”权限

\ bin文件夹是Sql Server Compact二进制文件所在的位置。

猜猜我是专注于\ App_Data文件夹太多…