PDA

View Full Version : سوال: مشکل با فایل web.config



zahrashoja
یک شنبه 29 بهمن 1391, 11:03 صبح
وقتی سایتمو روی لوکال وب سرور اجرا می کنم خطا میده
از خط authentication mode="Forms که وقتی تغییرش می دم به authentication mode=""Windows" باز میره از خط خطا می گیره
چرا؟




<configuration>


<connectionStrings>
<add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\asp netdb.mdf;User Instance=true" providerName="System.Data.SqlClient" />
<add name="ahanportalEntities" connectionString="metadata=res://*/App_Code.Model.csdl|res://*/App_Code.Model.ssdl|res://*/App_Code.Model.msl;provider=System.Data.SqlClient; provider connection string=&quot;Data Source=.;Initial Catalog=ahanportal;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>
<system.web>
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="System.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
<add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="System.Data.Entity.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
</assemblies>
<buildProviders>
<add extension=".edmx" type="System.Data.Entity.Design.AspNet.EntityDesignerBui ldProvider" />
</buildProviders>
</compilation>
<authentication mode="Forms">
<forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>
<membership>
<providers>
<clear />
<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="/" />
</providers>
</membership>
<profile>
<providers>
<clear />
<add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/" />
</providers>
</profile>
<roleManager enabled="false">
<providers>
<clear />
<add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" />
<add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" />
</providers>
</roleManager>
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
</system.webServer>
</configuration>

amir22448
یک شنبه 29 بهمن 1391, 12:04 عصر
می شه ارور رو بنویسید؟

zahrashoja
یک شنبه 29 بهمن 1391, 12:48 عصر
Configuration Error

Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.

Parser Error Message: It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS.

Source Error:

Line 26: </buildProviders> Line 27: </compilation> Line 28: <authentication mode="Forms"> Line 29: <forms loginUrl="~/Account/Login.aspx" timeout="2880" /> Line 30: </authentication>

mohsen_f_b
یک شنبه 29 بهمن 1391, 15:47 عصر
سلام

اگر بروی IIS اجرا میکنید؛ Virtual Directory ساخته نشده است.

http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/b5488995-fa99-460f-96d7-29d1ddcf3fac.mspx?mfr=true

موفق باشید

zahrashoja
یک شنبه 29 بهمن 1391, 16:45 عصر
من طبق این آموزش عمل کردم:
ساخت شاخه مجازي:
براي ساخت شاخه مجازي دو راه وجود دارد:
1- در روش اول شما بايد IIS را در مسير Control Panel\Administrative Tools اجرا كنيد.سپس در قسمت سمت چپ بر روي نام كامپيوترتان كليك كنيد.سپس Web Site را انتخاب كنيد.در زير فهرست آن بر روي Default Web Site كليك راست كرده و از منوي New گزينهء Virtual Directories را انتخاب كنيد.ويزارد اجرا مي شود.
Next را كليك كنيد.در صفحه بعد در قسمت Alias نام مستعاري را براي شاخه مورد نظر تعيين كنيد.در صفحه بعد شاخه مورد نظرتان را انتخاب كنيد.و در برگه آخر هم مجوزها را تعيين كنيد.
براي مثال در صورتي كه نام مستعار را برابر mysite وارد كرده باشيد بايد آدرس زير را در مرورگرتان وارد كنيد.
http://localhost/mysite

الانم رفتم تو قسمت application setting برای اون شاخه یه application رو add کردم ولی بازم همون خطا رو میده

masoud60
یک شنبه 29 بهمن 1391, 23:42 عصر
به فولدر پروژه خودتون دسترسی بدید. حتما کاربر aspnet رو هم اضافه کنید


---------------------------
http://www.kohan-co.net

zahrashoja
دوشنبه 30 بهمن 1391, 11:18 صبح
به فولدر پروژه خودتون دسترسی بدید. حتما کاربر aspnet رو هم اضافه کنید


---------------------------
http://www.kohan-co.net
میشه دقیق تر بگین... کاربر aspnet ؟؟؟
من رفتم در قسمت edit permission و اونا تغییر دادم ولی بازم همون خطا رو میگیره

masoud60
سه شنبه 01 اسفند 1391, 00:23 صبح
به روش زیر یوزر aspnet رو اضافه کنید
right click in folder -> properties -> security -> add -> advance -> find now -> Select ASPNET in below list -> ok -> ok - > check allow ticks -> click in advanced -> check ed replace permission and click ok


-----------------------
http://www.kohan-co.net

zahrashoja
سه شنبه 01 اسفند 1391, 00:25 صبح
خطا ها انگلیسی سرچ کردم و راه حلاشو بدست آوردم
این رو به وب کانفیگ اضافه کردم
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
...
و شکل شاخه مجازی که میسازی باید مث کره زمین باشه نه مثل پوشه فایل که با یه کلیک راست میشه تبدیلش کرد به application
و ....