PDA

View Full Version : حرفه ای: مشکل در استفاده از فروم YAF در داخل پوشه اصلی



mohammad.sakhidel
سه شنبه 10 آذر 1388, 12:08 عصر
سلام دوستان
من از فروم YAF می خوام در وب سایتی استفاده کنم ، وقتی فولدر این فروم خودش ریشه باشه مشکلی ندارم ولی وقتی می خوام اونو در وبسایت خودم قرار بدم مشکل پیش میاد. از روی راهنمای خود سایت هم قدم بقدم پیش رفتم ، در زیر مراحلی رو که انجام دادم می نویسم لطفاً اساتید یه راهنمایی بفرمایند :
- پوشه اصلی وبسایتم web_Institute نام داره و پوشه حاوی فروم YAFForum نام داره.
- فایلهای موجود در YAFForum/bin رو در web_Institute/bin کپی کردم.
- فایل yafnet.config رو از YAFForum به پوشه web_Institue کپی کردم.
- فایل دیتابیس فروم رو که در App_Data قرار داده بودم به فولدر App_Data از پوشه اصلی کپی کردم.
- فایل web.config پوشه YAFForum رو پاک کردم و بعضی محتویاتشو به فیال web.config اصلی کپی کردم که پایین هم گذاشتم.
- محتوای فایل yafnet.config که در پوشه اصلی وبسایت قرار داره :



<yafnet>
<connstr>Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\yafnet.mdf;Integrated Security=True;User Instance=True</connstr>
<uploaddir>~/upload/</uploaddir>
<boardid>1</boardid>
<!-- Enable URL Rewriting -->
<enableurlrewriting>false</enableurlrewriting>
<!--logtomail>email=;server=;user=;pass=;</logtomail-->
<!--categoryid>1</categoryid-->
<!-- Enable these to use a custom user class "provider" -->
<!--CustomUserAssembly>TinyGecko.YAFIntegration.dll</CustomUserAssembly>
<CustomUserClass>TinyGecko.YAFIntegration.yafUserClass</CustomUserClass-->
</yafnet>


- محتوای فایل web.config پوشه اصلی من بعد از تغییراتی که دادم :



<?xml version="1.0"?>
<!--
Note: As an alternative to hand editing this file you can use the
web admin tool to configure settings for your application. Use
the Website->Asp.Net Configuration option in Visual Studio.
A full list of settings and comments can be found in
machine.config.comments usually located in
\Windows\Microsoft.Net\Framework\v2.x\Config
-->
<configuration>
<configSections>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectio nGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHa ndlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSecti onGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializatio nSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere"/>
<section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSe ction, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
<section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationSe rviceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
<section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSecti on, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
<section name="yafnet" type="yaf.SectionHandler,yaf"/>
<section name="rewriter" type="Intelligencia.UrlRewriter.Configuration.RewriterCo nfigurationSectionHandler, Intelligencia.UrlRewriter"/>
</sectionGroup>
</sectionGroup>
</sectionGroup>
</configSections>
<yafnet configSource="yafnet.config"/>
<rewriter configSource="urlrewriter.config"/>
<appSettings/>
<connectionStrings>
<clear/>
<add name="LocalSqlServer" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\ASPNETDB.MDF;Integrated Security=True;User Instance=True"/>
<add name="InstituteConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\db_Institute.mdf;Integrated Security=True;User Instance=True"/>
<add name="AjaxChat" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\AjaxChat.mdf;Integrated Security=True;User Instance=True"/>
</connectionStrings>
<system.web>
<!--
Set compilation debug="true" to insert debugging
symbols into the compiled page. Because this
affects performance, set this value to true only
during development.
-->
<xhtmlConformance mode="Legacy"/>
<roleManager enabled="true" />
<compilation debug="true">
<assemblies>
<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Web.Extensions.Design, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/></assemblies>
</compilation>
<!--
The <authentication> section enables configuration
of the security authentication mode used by
ASP.NET to identify an incoming user.
-->
<membership defaultProvider="AspNetdbSqlMembershipProvider">
<providers>
<remove name="AspNetSqlMembershipProvider"/>
<add name="AspNetdbSqlMembershipProvider"
connectionStringName="LocalSqlServer"
type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
applicationName="/"
requiresUniqueEmail="false"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
minRequiredPasswordLength="5"
minRequiredNonalphanumericCharacters="0"
passwordAttemptWindow="10"
passwordStrengthRegularExpression=""/>
</providers>
</membership>
<authentication mode="Forms">
<forms name=".USERCOOKY"
loginUrl="pg_Login.aspx"
path="/"
protection="All"
timeout="30">
</forms>
</authentication>
<authorization>
</authorization>
<!--
The <customErrors> section enables configuration
of what to do if/when an unhandled error occurs
during the execution of a request. Specifically,
it enables developers to configure html error pages
to be displayed in place of a error stack trace.

<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
-->
<pages>
<controls>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</controls>
</pages>
<httpHandlers>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
</httpHandlers>
<httpModules>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add type="Intelligencia.UrlRewriter.RewriterHttpModule,Intel ligencia.UrlRewriter" name="UrlRewriter"/>
</httpModules>
</system.web>
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<providerOption name="CompilerVersion" value="v3.5"/>
<providerOption name="WarnAsError" value="false"/>
</compiler>
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" warningLevel="4" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<providerOption name="CompilerVersion" value="v3.5"/>
<providerOption name="OptionInfer" value="true"/>
<providerOption name="WarnAsError" value="false"/>
</compiler>
</compilers>
</system.codedom>
<!--
The system.webServer section is required for running ASP.NET AJAX under Internet
Information Services 7.0. It is not necessary for previous version of IIS.
-->
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules>
<remove name="ScriptModule"/>
<add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</modules>
<handlers>
<remove name="WebServiceHandlerFactory-Integrated"/>
<remove name="ScriptHandlerFactory"/>
<remove name="ScriptHandlerFactoryAppServices"/>
<remove name="ScriptResource"/>
<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</handlers>
</system.webServer>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>



اروری که فعلاً پیش میاد اینه که میگه تگ <yafnet> در فیال web.config رو نمیشناسه.
اساتید محترم لطفاً یه راهنمایی کوچک بکنن تا این مشکلم به کمک دوستان رفع بشه. متشکر.

mohammad.sakhidel
سه شنبه 10 آذر 1388, 13:52 عصر
یعنی کسی نیست که قبلاً از YAF استفاده کرده باشه؟

m.hamidreza
سه شنبه 10 آذر 1388, 19:22 عصر
شما یه پوشه در پوشه اصلی سایت به نام forum بساز کل محتویات YAF رو تو اون کپی کن. بعد لینک تالار رو به www.mydomain.com/forum بده که صفحه پیش فرض YAF خودش میاد.
دلیلی برای ادغام وب کانفیگ ها و Bin و ... نیست.
فقط اون پوشه ای که بنام forum ساختی باید Virtual Directory باشه. یعنی از کنترل پنل هاستینگ باید اون پوشه رو بسازی نه همینجوری.
موفق باشید.

mohammad.sakhidel
سه شنبه 10 آذر 1388, 21:28 عصر
من این کارو کردم یعنی یه virtual directory ایجاد کردم ، بعدش فالهای YAF رو کپی کردم تو اون. وقتی buildش می کنم این ارور رو میده :



it is an error to use a section registedred as allowDefinition='MachineToApplication' beyond application level. this error can be caused by a virtual directory not being configured as an application in iis.


بعد از اینکه vdir رو ایجاد کردم تو همون iis رفتم روش رایت کلیک کردمو پروپرتیزشو نگا کردم ، تو قسمت Application Name اسم vdirی که ساخته بودم بود :افسرده:

این خطا دلیلش چی میتونه باشه؟

m.hamidreza
سه شنبه 10 آذر 1388, 23:04 عصر
این خطا دلیلش چی میتونه باشه؟




متن خطا واضح هست که تنطیمات IIS درست set نشده دیگه اونش با شما...
روی هاست مثل بنز کار میکنه :چشمک: