Introduction to dasBlog 2.3.1 (This documentation is in support of the current 2.3.1 release)

This dasBlog 2.3.1 release comes almost 3 years since the release of dasBlog 2.3, we know this is an internet lifetime, and in many cases our user base may have moved on to other applications, (and/or are just checking back in to see what we have to offer, or you stuck with us and you may be outgrowing your current dasBlog installation!

That said, if this is your first experience with dasBlog or you’re looking for improvements in your current dasBlog, you will find that dasBlog 2.3.1 is an incremental improvement, now supporting .NET 4 and resolving some minor support operations issues, and is even more robust and stable than it ever has been. What you will not find is a host of new features or much expansion of the existing features.

OK so what is new?

.NET 3.5 support,
Better support for IE8/9 layout in themes, (minor)
Better support for XHTML
Supports the latest version of FreeTextBox (also better XHTML)
For developers, we now support VS 2010
Bug fix for error on comments as Admin reviewer and a comment had no Author element
Search Engine Optimization Patch added
New simple category less thread view, index of all blog posts
Google OpenID handling improvements
Upgraded to DotNetOpenAuth v3.4.5
We now officially support dasBlog on IIS 7 using integrated pipeline mode

So; if you already know and love dasBlog, you’re going to like 2.3.1

clip_image001

dasBlog Automated Installation:

 

As in release 2.3, we highly encourage you to use the automated installer for 2.3.1, especially for new installs.

The installer link can be found at Codeplex: http://dasBlog.codeplex.com/

The usage of the web installer assumes that you have the access/permissions and other related abilities to install a .NET web application on a Microsoft Windows IIS Server/client environment.

Whether using the automated tools, or installing manually, dasBlog is supported on IIS 5.0 – IIS 7.X, dasBlog 2.3.1 will require .NET 3.5+ and the appropriate system configurations and security for operation.

If you use the automated installation to upgrade your existing 2.3 dasBlog site, you will need to review the upgrade section in this document to complete your installation manually. Be sure to back up your existing site locally before performing an upgrade. Basically the manually upgrade process in this scenario is recovering your existing CONTENT, along with the Site.config and siteSecurity.config files.

 

Manual Installation:

The dasBlog installation files are provided as a zip file:

dasBlog-2.3.1xxxxxx-Web-Files.zip, other release files (a.k.a. the source) may be available, those would be provided for developers and generally should not be used for installation.

1. Create an IIS Web Site (Either on a local IIS server or via a commercial host provider)

Create a virtual IIS web site from folder "/dasBlogce" or you can use your IIS root if you understand the requirements. You can also use the provided script "CreateDasBlogVdir.vbs" to create the site, if you are installing local. More information on using the VBS option is provided later in this document. The vbs script was created for IIS5 – IIS6, it has not been thoroughly tested in later IIS environments.

New Install OF (Web Files)

Copy all files into your "dasBlogce" folder or IIS site root keeping the folder structure intact.

You’ll need to make sure you have IIS and ASP.Net on your computer before you begin. IIS is the Microsoft web server but it is generally not available on Home Editions of XP, VISTA or Windows 7.

 

A. Unzip the dasBlog-2.3.1xxxxxx-Web-Files.zip into a new directory. You’ll want to keep the source in the dasBlogce/ directory (star #1 below).

 

clip_image003

 

B. If you choose to use the VBS file; Run CreateDasBlogVdir.vbs (star #2 above) which will create a Virtual Directory in IIS that points to the dasBlogce/ directory.

 

c. You’ll be prompted for the name of the Virtual Directory you’d like to use for your application. It defaults to dasBlog but you may want to use Blog, Notes, or something else that appeals to you.

 

clip_image005

 

clip_image006Note: If you are installing the source, the source files expect to find the application at http://localhost/DasBlog/

Note: If you are running DasBlog on ASP.NET 2.0 you need to read the supplied web.config carefully as this issue applies to you.

Add cookieless="UseCookies" to the <forms> element of your web.config (Details)

 

2. Important Permissions & configuration files:

Remember that dasBlog doesn't use a database, but rather stores all data in XML files in the content folder. The automated install sets ACLs on a few directories to allow "Read,Write,Delete." This automated process encapsulates a potentially tricky setup step for dasBlog. Since you are not using the automated install you must accomplish these same configuration settings to successfully install dasBlog.

Note: If you are installing this onto a shared server, such as a web host where you’ve rented space, you may have to request help from your web host to set permissions correctly.

The following are the Directory Access Control List requirements:

Set NTFS ACLs on the destinations as specified.

“dasBlogce/content” Set Access to "Read,Write,Delete"

"dasBlogce/logs" Set Access to "Read,Write,Delete"

"dasBlogce/siteconfig" Set Access to "Read,Write,Delete"

 

Setting IIS Services / User Accounts Security; (mandatory):

* On IIS 5.0 (Windows 2000), the account used to execute web applications (IWAM_xxx) needs read/write permissions to the content, siteconfig, and logs subdirectories.

* The ASP.NET worker process identity, usually “{machinename}\ASPNET” on IIS5.0 (Windows 2000 and Windows XP) or “NETWORK SERVICE” on IIS 6.0/7.X (Windows Server 2003/2008) also need read/write access to the content, siteconfig, and logs subdirectories.

 

Setting up Blog Configuration Requirements (Minimum)

* Go to the siteConfig directory in (likely in c:\inetpub\wwwroot\{sitename}) and open the site.config file. This is an xml text file, edit only with a text editor. Notepad works fine.

In that file, change the settings (quite obvious when you look at them). The most important change is to set the <Root> value to the proper URL for your weblog. Be sure to include the trailing “/” in your <Root> value. Example: “http://www.dasBlog.info/”

 

Setting up Blog Access Security and Multi-User Usage

* Open the siteSecurity.config xml file in the same directory and set up your own account with a proper password.

Be sure to change your username and password by editing sitesecurity.config. You can also add additional administrators or "contributors." Contributors can add content, but only edit or delete content they've added.

For example:

<?xml version="1.0" encoding="utf-8"?>
<SiteSecurityConfig xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Users>
<User>
<Name>MrAdmin</Name>
<Password>MyStrongPassword</Password>
<Role>admin</Role>
<Ask>true</Ask>
<DisplayName>Your DisplayName here!</DisplayName>
<EmailAddress>myemail@myemail.com</EmailAddress>
</User>
<User>
<Name>MrIAmNotAnAdmin</Name>
<Password>MyStrongPassword</Password>
<Role>contributor</Role>

When you have completed these file updates, their update will force an IIS restart and:

clip_image006[1]You should now have a dasBlog instance configured for your use and access.

Browse to your blog <ROOT> address and see the default startup page.

Wrap-Up

Hopefully you now have a working version of dasBlog. If not, try some of the links below to locate helpful information.

dasBlog Home (dasblog.codeplex.com)
dasBlog Legacy Site and old documentation (dasBlog.info)

Troubleshooting

98% of problems with DasBlog are web.config files being wrong or wrong directory permissions. That means, bad XML, wrong assembly namespaces, missing sections, missing HTTP Handlers, or incorrect ACLs, etc. Always compare your web.config with the one that shipped and you'll get back on track. Read the readme for any late breaking information on this release or subsequent releases.


UPGRADES

DasBlog has been around for quite some time and keeps improving. The benefit is new features and bug fixes, but the downside is some extra difficulty when upgrading the application. To upgrade an existing 2.3 dasBlog installation:

Copy over all the files and edit or merge the configuration files you don’t want updated by the upgrade.

· Site.config *

· siteSecurity.config *

· blockedips.config

· blacklist.txt

· PingServices.xml

This is all that is absolutely required, other upgrade process may be required see the concepts and steps below: (* key files, others are non-essential.)

General Upgrade Concepts and processes, see Upgrade Details for upgrades for version < 2.0

Unzip Web-Files.zip locally.

If you're running DasBlog locally, you have the \content folder local. If you're remote, bring your \content folder down to your local machine.

DasBlogUpgrader (This is not needed for upgrading from 2.3; only if you are upgrading from a much older version like 1.9 or earlier)

Referrer spam. Open DaBlogUpgrader.exe.config and add any words or domainnames that you want stripped from your dasBlog comments and referrer XML files. Your content and posts will never be touched.

Run DasBlogUpgrader from a command line like this: DasBlogUpgrader "c:\whatever directory\dasBlog\whateverweb\content"

NOTE: You can run the upgrader even if you've already upgraded. It's a multiple use thing.

It will ask you all sorts of questions. For the most part, answering yes to all is safe.

One of the options just strips all referrals (not trackbacks) out of your XML file. If you're running a site with any reasonable amount of traffic you'll see a nice performance boost if you do this. We recommend that you just give up on referrals. They are a hassle; they grow too quickly and provide little more than a bloated site.

Merging

If you are upgrading from a previous version, you WILL need to manually merge some new lines into your web.config if you want to maintain your existing web.config. We suggest Beyond Compare from ScooterSoftware for your comparing and merging needs or WinMerge, an excellent Open Source program.

Uploading

After running the upgrader, (if required);

Upload all the ASCX, ASMX and ASPX files to your site and the entire contents of the newtelligence.DasBlog.Web\bin folder and all subfolders to your site, overwriting ALL remote files.

Upload the new \DatePicker folder and the \ftb folder and all subfolders

Upload all of \themes (if you like) and all of \smilies and \images.

Upload your new merged web.config over your old one

Upload your new merged site.config over your old one

If you like, add PingServices.xml, NavigatorLinks.xml, blockedips.config and blacklist.txt.

While you're there...

While you're connected to your remote system, consider cleaning out your \logs folder of .log files and .zip files. If your blog has been up a while, you've likely got schmutz up there, so why not clean up?

You are now upgraded.

Upgrade Troubleshooting!

98% of problems with DasBlog are web.config files being wrong or wrong directory permissions. That means, bad XML, wrong assembly namespaces, missing sections, missing HTTP Handlers, or incorrect ACLs, etc. Always compare your web.config with the one that shipped and you'll get back on track. Read the readme for any late breaking information on this release or subsequent releases.

Upgrade Details for prior Versions
(To upgrade an existing < 2.0 dasBlog installation, find the version of the application you are using now and then execute the steps in each section to bring your version up to date)
Upgrading from a much older version: 1.9 and before:

Finding Your DasBlog version

Your DasBlog version information is posted on your blog’s web page (for most themes). Look for the section indicated by the arrow below.

 

clip_image007

 

You can also use the version information for the newtelligence.DasBlog.Web.dll file (found in your /bin directory).

clip_image008

 
Upgrading from 1.6 or Earlier

DasBlog 1.6 stored data like comments and trackbacks in *.dayextra.xml files. It also had a bug that stored entries in the wrong timezone. To fix these older bugs and improve performance you’ll need to run a one-time upgrade process on your dasBlog/content folder. You’ll also have the opportunity to mark all your entries as Public, as the new version of DasBlog respects that setting.

Run the upgradedasBlog/DasBlogUpgrader.exe with your content directory as a parameter.

For example:

DasBlogUpgrader.exe c:\dasBlog\content

This utility will also give you the opportunity to clean your posts of old referral spam. You can edit the DasBlogUpgrader.exe.config to include other naughty words that you want removed from your files. Your posts will not be changed, only referrals, pingbacks and trackbacks.

Next, proceed to the instructions to upgrade from 1.7 below

 

Upgrading from 1.7

In the interest of simplification, some DLLs aren't needed from your existing installation. You can delete your bin folder and redeploy completely, but if you just copied DasBlog 1.9 files over your existing files, note that newtelligence.DasBlog.Util.Html.dll and newtelligence.Web.UI.WebControls.dll are no longer needed and may be safely deleted.

NOTE: DasBlog 1.9 includes a few new configuration changes. After upgrading, be sure to visit your Admin’s Edit Configuration page and peruse all the new settings and confirm the existing ones.

If you have an existing web.config, be sure to merge it with the web.config in this archive. Significant changes to the web.config in 1.9 are as follows.

We suggest that you do a line by line merge comparing your web.config with the new one using a diff tool like BeyondCompare or KDiff. Alternatively, you can use our default web.config if you’ve made no changes to yours.

NOTE: The goal of these changes mean to simplify DasBlog and remove lines you have to care about from the web.config.

· The newtelligence.Web.UI.WebControls assembly is REMOVED, with all its classes moved to newtelligence.DasBlog.Web.Core.

o The newtelligence.ControlImages configSection has moved to a different assembly:
<section name="newtelligence.ControlImages" type="newtelligence.DasBlog.Web.Core.WebControls.ControlImageModuleSectionHandler, newtelligence.DasBlog.Web.Core" />

o The <newtelligence.ControlImages> type has moved:
<add type="newtelligence.DasBlog.Web.Core.WebControls.ShadowBox" name="shadowbox" />

· The newtelligence.DasBlog.Themes isn’t required at all anymore (see Themes below) and you can remove the <configSections> element and the whole < newtelligence.DasBlog.Themes > section lower down in the file. Make sure the file is still well-formed XML.

· These files don't exist in your file system. They are not real files. They are HTTP Handlers/Endpoints. You need to add a few new elements in the <httpHandlers> section to get these new features, including
<add verb="*" path="cptrk.ashx" type="newtelligence.DasBlog.Web.Services.CrosspostReferrerHandler, newtelligence.DasBlog.Web.Services" />
<add verb="*" path="deleteItem.ashx" type="newtelligence.DasBlog.Web.Services.DeleteItemHandler, newtelligence.DasBlog.Web.Services" />

· The <forms> section has changed a little. We have changed the cookie name, although this is optional.
<forms name=".DASBLOGAUTH" protection="All" timeout="60" path="/"/>
IMPORTANT: If you are running multiple instances of DasBlog on the same machine/domain, set the path=”” attribute to the value of the virtual directory. For example, if you’re running http://www.foo.com/myblog1 then make path=”/myblog1

Next, proceed to the instructions to upgrade from 1.8 below

 

Upgrading from 1.8

If you have an existing web.config, be sure to merge it with the web.config in this archive. Significant changes to the web.config in 1.9 are as follows.

We suggest that you do a line by line merge comparing your web.config with the new one using a diff tool like BeyondCompare or KDiff. Alternatively, you can use our default web.config if you’ve made no changes to yours.

NOTE: The goal of these changes mean to simplify DasBlog and remove lines you have to care about from the web.config.

· Just as in the 1.7 upgrade instructions, some files can be referred to in a URL but do not exist in the file system—these are HTTP Handlers/Enpoints. You need to add two new elements. Find the section that starts <httpHandlers> and add the two lines below:

<add verb="GET" path="microsummary.ashx" type="newtelligence.DasBlog.Web.Services.MicrosummaryHandler, newtelligence.DasBlog.Web.Services" />

<add verb="*" path="autoSaveEntry.ashx" type="newtelligence.DasBlog.Web.Services.AutoSaveEntryHandler, newtelligence.DasBlog.Web.Services" />

<add verb="GET" path="googleSitemap.ashx" type="newtelligence.DasBlog.Web.Services.GoogleSitemapHandler, newtelligence.DasBlog.Web.Services" />

<add verb="*" path="approveItem.ashx" type="newtelligence.DasBlog.Web.Services.ApproveItemHandler, newtelligence.DasBlog.Web.Services" />

 The URL mapping structure has undergone some refinement. This has created a number of changes. The simplest upgrade step is to go to the bottom of your web.config file and replace your existing <newtelligence.DasBlog.UrlMapper> section with the code below:

<newtelligence.DasBlog.UrlMapper>

<add matchExpression="(?&lt;basedir&gt;.*?)/atom\.ashx" mapTo="{basedir}/SyndicationServiceExperimental.asmx/GetAtom?" />

<add matchExpression="(?&lt;basedir&gt;.*?)/rss\.as[hp]x" mapTo="{basedir}/SyndicationService.asmx/GetRss?" />

<!-- TSC: LINK rewriting -->

<add matchExpression="LINKRW(?&lt;site&gt;.+).aspx\?(?&lt;param&gt;.+)=(?&lt;value&gt;.+)"

mapTo="{site},{param},{value}.aspx" />

<!-- TSC: URL rewriting -->

<!-- (?<basedir>.*?)/(?<site>.*?),(?<param>.*?),(?<value>.+)\.aspx -->

<add matchExpression="(?&lt;basedir&gt;.*?)/(?&lt;site&gt;.*?),(?&lt;param&gt;.*?),(?&lt;value&gt;.+)\.aspx"

mapTo="{basedir}/{site}.aspx?{param}={value}" />

<!-- .TEXT archive compatibility -->

<!-- Translates

FROM: /blog/archive/2004/07/27/194.aspx

TO: /blog/default.aspx?date=2004-07-27

-->

<add matchExpression="(?&lt;basedir&gt;.*?)/archive/(?&lt;year&gt;\d{4})/(?&lt;month&gt;\d{2})/(?&lt;day&gt;\d{2})/(?&lt;postid&gt;\d+)\.aspx"

mapTo="{basedir}/default.aspx?date={year}-{month}-{day}" />

<!-- .TEXT archive compatibility -->

<!-- ALTERNATIVE: Translates

FROM: /blog/archive/2004/07/27/194.aspx

TO: /blog/permalink.aspx?guid=194

-->

<!--

<add matchExpression="(?&lt;basedir&gt;.*?)/archive/(?&lt;year&gt;\d{4})/(?&lt;month&gt;\d{2})/(?&lt;day&gt;\d{2})/(?&lt;postid&gt;\d+)\.aspx"

mapTo="{basedir}/permalink.aspx?guid={postid}" />

-->

</newtelligence.DasBlog.UrlMapper>

Finally, if you’re running under Asp.Net 2.0, make sure you read the section above: Running DasBlog on ASP.NET 2.0

Upgrading Themes 1.9

One of our goals is to make it easier to share Themes for use within dasBlog. However, earlier versions would require you to copy/unzip the theme into the themes folder AND include a bunch of information about the themes paths and assets within the web.config. Users and Theme Authors alike found this tedious. So, DasBlog 1.8 introduced the concept of “Theme Manifests” to promote xcopy installation and distribution of new themes.

Each theme directory needs a theme.manifest file that describes the name, title, and relative directory of that them, including any optional “named assets.” For example, this manifest includes custom images for the itemLink and dayLink.

Note, however that 99% of themes DO NOT use named assets, so chances our yours doesn’t either. So, the first time your theme loads, if there isn’t a theme.manifest we will generate one for you. If your theme looks funky or changes between 1.7 and 1.8, perhaps you need to include your named assets in the theme.manifest file that were previously expressed in your web.config.

<?xml version="1.0" encoding="utf-8" ?>
<theme name="discreetBlogBlue" title="Discreet Blog Blue" templateDirectory="themes/discreetBlogBlue"
imageDirectory="themes/discreetBlogBlue">
<image name="itemLink" fileName="images\bryanbell\discreetBlogBlue\bluePermaLink.gif" />
<image name="dayLink" fileName="images\bryanbell\discreetBlogBlue\bluePermaLink.gif" />
</theme>

Again 99% of users won’t need to do a thing to get themes working in 1.8; they will just work.

Tip: Check your themes templates if you think something odd is happening. There may be hardcoded text in the HTML for disclaimers or links.

FreeTextBox 1.9 and later versions (Shipping FreeTextBox 3.3.1)

DasBlog uses an external component called FreeTextBox (http://www.freetextbox.com) for Rich Text editing support. We’ve shipped with versions 3.0.5000.1 and up, and DasBlog 1.9 ships with version 3.1.6.35504.

WARNING: DasBlog 1.8 shipped with FTB 3.0.5000.6 and earlier versions of DasBlog with FRB 3.0.5000.5. This release updates FTB to 3.1.6, so make sure your web.config is updated to match the example below and that you update your FreeTextBox.dll.

NOTE: Make sure you upload the whole /FTB folder from this release.

However, folks want to upgrade FreeTextBox independently of DasBlog. So, we’ve included this new section in the web.config to enable you in the future.

<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="FreeTextBox" publicKeyToken="5962a4e684a48b87" culture="neutral"/>
<bindingRedirect oldVersion="3.0.5000.0-3.0.5000.5" newVersion="3.1.6.35504"/>
</dependentAssembly>
</assemblyBinding>
</runtime>

If a new version of FTB came out, this section lets you tell ASP.NET “I know you asked for one of these versions, I’d rather you use THIS version. This evaluation happens at runtime when ASP.NET starts up. Hypothetically, if you wanted to use some theoretical new version like 3.2.5000., for example, you could change oldVersion=”3.0.5000.0-3.1.6.35504” and newVersion=”3.2.5000.0” and you would be all set.

We are working on providing other alternative Rich Text Editing components in the future. This version include support for FireFox and IE. However, if you’re really not happy with this component, you might consider composing your posts offline with Microsoft Li

Last edited Apr 25, 2012 at 12:45 AM by tomwatts, version 8

Comments

No comments yet.