## YAF.NET

#### Installation & Upgrading Readme

Thank you for trying YetAnotherForum.NET (YAF.NET) ASP.NET Open Source Forum solution! The YAF.NET project is an international collaboration of like-minded, skilled, and creative individuals who are striving to make YAF.NET the most robust and malleable forum solutions available.

If you have any questions or would like to get in touch with the project, please see the contact information at the bottom of this document.

### Index

1. Requirements
2. New Installation
3. Upgrade
4. Support

#### Installation Requirements

Make sure your server / Host has the following requirements:

1. Microsoft .NET Framework 4.0 (Use version 1.9.5.5 or earlier for .NET Framework 3.5)
2. Microsoft SQL Server 2005 or above.

# New Installation

### STEP 1 UNZIP

1. Decompress the YAF.NET archive file to the physical location where you want YAF.NET. By default, IIS (Internet Information Server) sets web sites to be located at "c:\Inetpub\wwwroot\...".

### STEP 2 Configuring the Appication in IIS (Internet Information Server)

1. In the IIS Manager, create a new "Virtual Directory." How to: Create and Configure Virtual Directories in IIS
2. If you want to run YAF.NET as seperate web site, create a new site and select the physical directory where you extracted YAF.NET.
3. Set the YAF.NET Application Pool to .NET 4.x

### STEP 3 SETUP DATABASE

1. A SQL Server database must exist with proper permissions set so that YAF.NET can access it. When YAF.NET is run for the first time, it will detect that the database needs to be setup (or needs upgrading) and will automatically run you through the process required to create the database structures needed.

### STEP 4 Rename "Web.Config" File

Rename <YAF.AppRoot>"recommended.web.config" in the yaf root Folder to web.config. Warning Only edit the web.config if you have knowledge of the ASP.NET configuration system.

#### STEP 4a (Optional) Generate a Machine Key for your installation

1. Open the file <YAF.AppRoot>web.config and visit the a site that allows generation of a unique machine key for your forum. Such as this site: AspNet Resources Machine Key Generator.
2. Copy and paste the generated machine key to your web.config in the <system.web> section.

#### STEP 4b (Optional) Modify "app.config" File

1. By default, YAF.NET is designed to be installed at the root application on any IIS web server. If you want YAF.NET to be installed off of the main root in a sub folder, you need to modify the root key. Make sure the files in the /bin directory of the YAF zip file are copied to /bin directory on the root of your web server. Then open up "app.config" and un comment the "YAF.AppRoot" key. Enter the value as the directory to your forum. Example: If you have install the forum in the directory "/forum/yaf/" you will need to un comment/add key with name "YAF.AppRoot" and value "/forum/yaf/" to app.config.

#### STEP 4c (Optional) Modify "mail.config" File

1. Modify the SMTP settings by entering your mail server information. If you SMTP server requires SSL, you must add:
   <add key="YAF.UseSMTPSSL" value="false" /> to your app.config or appSettings.

### STEP 5 Run The Install Wizard

1. Open the file <yaf.approot>install/default.aspx on your web site. If you are testing on your local computer, under a directory called YetAnotherForum.Net, the address should be: http://localhost/yetanotherforum.net/install/
2. The wizard will guide you through the Install Process.

# Upgrade Installation

### STEP 1 BACKUP & REMOVE

1. Backup all your existing installation YAF files remove the following directories from your forum root directory:
   - \bin
   - \classes
   - \controls
   - \defs
   - \editors
   - \install
   - \language
   - \pages
   - \template
   - \themes
   - \Web References
2. Be careful not to delete the /images or /upload directory.
3. IMPORTANT BACKUP YOUR DATABASE

### STEP 2 Unzip

Unzip the file structure YAF-BIN ZIP archive to the folder you want to run YAF to run inside. The YAF \bin directory must be in your application root.

### STEP 3 Upgrade the "Web.Config" File

Please follow these important directions:

You need to MERGE the changes for the recommended.web.config or the v1.9.1.upgrade.web.config depending on the original web config you used.

#### IMPORTANT Remove the following lines if you are upgrading from YAF.NET version prior to 1.9.5.5

    Remove Line <add tagPrefix="DotNetAge" namespace="DNA.UI.JQuery"assembly="DNA.UI.JQuery"/>
    Remove Line <add tagPrefix="DotNetAge" namespace="DNA.UI" assembly="DNA"/>

    Remove Line <add tagPrefix="YAF" namespace="YAF.Classes.UI"assembly="YAF.Classes.UI"/>

    Remove Line <add tagPrefix="YAF" namespace="YAF.Classes.Utils"assembly="YAF.Classes.Utils"/>
    Remove Line <add tagPrefix="YAF" namespace="YAF.Classes.Core" assembly="YAF.Classes.Core"/>
    Remove Line <add tagPrefix="YAF" namespace="YAF.Classes.Data" assembly="YAF.Classes.Data"/>

    Remove Line <add namespace="YAF"/>
    Remove Line <add namespace="YAF.Classes.Utils"/>
    Remove Line <add namespace="YAF.Classes.Core"/>
    Remove Line <add namespace="YAF.Controls"/>
    Remove Line <add namespace="YAF.Classes.Data"/>

    Remove Line <add namespace="YAF.Classes.UI"/>

#### IMPORTANT Update this following lines if you are upgrading from YAF.NET version prior to 1.9.5.5

#### Remove the Lines Specified Below and Replace with "Add" Line.

    Remove Line <add name="YafTaskModule" type="YAF.Classes.Core.YafTaskModule, YAF.Classes.Core"/>

    Add Line <add name="YafTaskModule" type="YAF.Core.YafTaskModule, YAF.Core"/>

    Remove Line <add name="YafTaskModule" type="YAF.Classes.Core.YafTaskModule, YAF.Classes.Core" preCondition="managedHandler"/>

    Add Line <add name="YafTaskModule" type="YAF.Core.YafTaskModule, YAF.Core" preCondition="managedHandler"/>

    Remove Line <profile enabled="true" defaultProvider="YafProfileProvider" inherits="YAF.Classes.Utils.YafUserProfile">

    Add Line <profile enabled="true" defaultProvider="YafProfileProvider" inherits="YAF.Utils.YafUserProfile">

    Remove Line <add verb="POST,GET,HEAD" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro.2"/>

    Add Line <add verb="GET" path="Resource.ashx" type="YAF.YafResourceHandler, YAF" />

    Remove Line <add name="AjaxPro" preCondition="integratedMode" verb="POST,GET,HEAD" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro.2" />

    Add Line <add name="YafHandler" preCondition="integratedMode"verb="GET" path="Resource.ashx" type="YAF.YafResourceHandler,YAF" />

#### Tip Merging Web.Config Files

A tip to merge web.config files is to download both of them, then use a merge program to combine. WinMerge is a free and excellent merge program which you can download here: http://www.winmerge.org/

### STEP 4 Upgrade Wizard

Open the file <YAF.AppRoot>install/default.aspx on your web site. If you are testing on your local computer, under a directory called YetAnotherForum.Net, the address should be: http://localhost/yetanotherforum.net/install/

The wizard will guide you through the upgrade process.

### Yet Another Forum Community Support

If you have any questions, please visit the YAF Community Support forum: http://forum.yetanotherforum.net, or visit the Wiki for More Informations.

### Contact Us

Thanks for trying YAF! If you have any suggestions or comments please post them on the support forum!