Sanibel Logic LLC

...Scalable Technologiesfor the Enterprise

Disabling Your Domain’s Mail Server Spam Filtering

Sanibel Logic’s server based mail server (SmarterMail) provides incredible spam filtering results; in many cases providing a reduction of 95% of spam.   Should you prefer to rely on client based spam filtering exclusively, as a Domain Administrator you can disable the SmarterMail spam filtering for your entire domain.

Domain-Spam-Filtering-1To start, login to your web based mail interface as Domain Administrator and navigate to Settings / Domain Settings, as illustrated here.  Make sure you have expanded the Domain Settings folder and not the My Settings folder.   Then navigate to Filtering / Spam Filtering.   Select the “Override Spam Settings for this domain” option.

Domain-Spam-Filtering-3Then select the Actions tab, as illustrated here. For low, medium and high probability, select NO ACTION and then depress the SAVE button above to save all changes for both the Options and Actions tabs.

These changes will ensure that all email for your domain is not classified in any way as spam or junk mail at the mail server.

Personal-Spam-Filtering-1However, individual/personal spam filtering settings can override the domain spam filtering settings so it is necessary to check your personal settings to ensure that you are defaulting to the use of the domain spam filtering options.  If you are a Domain Administrator you will see both My Settings and Domain Settings.  Collapse the Domain Settings and expand the My Settings and then navigate to Filtering / Spam Filtering and select the Default Spam Settings and save.

Personal-Spam-Filtering-2If you are not the Domain Administrator, however simply a mail User, then you will see only My Settings, as illustrated here.  Navigate to Filtering / Spam Filtering and select the Default Spam Settings and save.

These steps will ensure that all mail flows through the SmarterMail mail server and is not classified in any way as spam or junk.

Understanding Your Mail Server’s Spam Filtering

Sanibel Logic licenses the Smarter Tools mail server product called SmarterMail.  SmarterMail's antispam features can rid mail servers of up to 95% of all spam.  Third party spam filtering product are NOT necessary when using SmarterMail as a mail server.

Due to the flexible nature of SmarterMail's antispam setup, spam checks can influence the spam decision as much or little as you want. When spam protection runs on a particular email, all enabled spam checks are performed on the email. The total weight of all failed tests is what comprises the spam weight for the email. A spam probability level of low, medium or high probability is then assigned to the email and an action is taken on that message based on its total spam weight. 

An added benefit to SmarterMail's Antispam Administration is the ability to combat both incoming and outgoing spam messages. Most mail servers only allow system administrators to keep spam from entering the mail server. SmarterMail helps protect mail users from incoming spam but also includes the added benefit of keeping mail servers from actually sending spam, thereby helping to protect the mail servers from being blacklisted.

The pre-configured default spam filtering rules for all domains are to move either medium or high spam probability email to the email account’s mail server based junk folder.  Email of low spam probability will be deposited into the Inbox by default.

Spam Probability Action
High Moved to Server Based Junk Folder
Medium Moved to Server Based Junk Folder
Low No Action – Deposited into Inbox
 
Your domain administrator can easily override the above default spam filtering configuration and take different actions for either of low, medium or high spam weight email.
 
For example, your domain administrator can configure an override and deposit all mail into an Inbox, regardless of spam filtering probability.   Your domain administrator can also override spam filtering rules and move low, medium and high spam filtering probability mail to the server based junk mail folder.  Moving all of low. medium and high probability to the server based junk mail folder is of course the most aggressive spam filtering approach, however it is an acceptable approach, usually resulting in identifying and diverting 95% of spam.
 
Spam filtering is not a perfect science, and occasional emails may be incorrectly identified as spam from time to time.  Best practice dictates that your server based junk folder be occasionally checked for incorrectly categorized emails.
 

Regular Expression Syntax Testing and Validation

Another common question I get some from licensees of SSLRedirect, HttpCompressionAgent and nUrlRewriter is how to construct meaningful Regular Expressions which will match an incoming URL for the licensee's intended conditions.   Of course, it is my intention to use Regular Expressions within these products because Regular Expressions are an effective tool for testing a broad range of conditions.  However, it is not my intention to educate you on Regular Expression syntax.  I have found a number of Internet sources for such Regular Expression syntax knowledge....simply by Googling "Regular Expressions".

I did develop a Test Regular Expression web page, which allows you to key in an incoming string, followed by a Regular Expression string to see if the Regular Expression will match the incoming string.  CLICK HERE to use this Regular Expression test web page.

The Test Regular Expression web page is illustrated below:

RETest

Regular Expression String Encoding

Sanibel Logic has a number of products which utilize Regular Expressions.  One common question asked by licensees is how to encode Regular Expression strings within the web.config file.  Because the web.config conforms to rules for HTML encoding, any such string must first be HTML encoded, as provided by the .NET System.Web.HttpUtility.HtmlEncode method.  After the string is HTML encoded then we must consider Regular Expression special characters, which must be escaped and include the following special characters:

  • "\" - Backslash
  • "^" - Carat
  • "." - Period
  • "[" - Left bracket
  • "$" - Dollar sign
  • "(" - Left parenthesis
  • ")" - Right parenthesis
  • "|" - Pipe
  • "*" - Asterisk
  • "+" - Plus
  • "?" - Question mark
  • "{" - Left curly bracket

SSLRedirect uses Regular Expression values within the web.config SSLRedirect configuration section, within the urlsIn and urlsOut Xml tags.

HttpCompressionAgent also uses Regular Expression values within its web.config HttpCompression configuration section, within the mimeTypes, urls, assemblies and urlReferrers Xml tags.

To shortcut the process of browsing the Internet, so one can determine how to HTML encode and properly allow for Regular Expression special characters, I have written a basic web transaction which will transform an input Regular Expression string.   Click HERE to try the Regular Expression transformation web transaction.

Sample output from the Regular Expression Transformation web transaction is included for your benefit below...

Regular Expression Transformation Web Transaction

HttpCompressionAgent - A Must Have Compression Module...

HttpCompressionAgent continues to provide incredible compression efficiencies for HTTP data streams, providing between 70%-95% reduction in overall data stream size.  Of course one of the added features is that embedded resources (WebResource.axd HTTP requests) are also compressed.  Just listen to what third parties are saying in a recent Internet forum session...

"...I decided to try HTTPCompressionAgent from Sanibel Logic. Although DNN has built in compression, I decided to try this module as it was supposed to compress a few things DNN didn't.

What I found was that for me this is a MUST HAVE WITH LISTX! If you have ever done any performance analysis on your site against ListX, you will notice that ANY ListX module you have is NOT compressed IF you have AJAX enabled. I loaded up HTTPCompressionAgent from Sanibel and low and behold... now ALL my ListX AJAX enabled modules are compressed. It's made a HUGE difference...."

HttpCompressionAgent also works flawlessly with the latest of ASP.NET features, such as ASP.NET 3.5 extensions, AJAX, etc...

"...Well, after buying and trying this module, I have to say it so far seems to work flawlessly on compressing the .AXD's. Plus the support is instant (Sunday afternoon < 2 hour email response). I have to second the endorsement on this one, if it works on our crazy site with all our compression stuff and assorted modules, for sure it will work wonders on basic setups..."

Please don't take my word for it. CLICK HERE to read the entire forum exchange.

Effective SEO Strategy ?

I am asked often what are some of the SEO techniques with respect to implementing web content which is effectively indexed by Google as well as other search engines.  I would tend to emphasize the following:

  1. Use HTML h1 tags and provide meaningful content.
  2. Use HTML title tag and provide meaningful content.
  3. Use HTML meta tag with names="keywords" attribute and companion content attribute for providing meaningful keyword terms.
  4. Use HTML meta tag with names="description" attribute and companion content attribute for providing meaningful content.
  5. When using HTML img tag, be sure to provide meaningful content within alt attribute.
  6. Review use of anchor tags to ensure meaningful content.
  7. Use HTML noscript tag to retain meaningful and indexable content.
  8. Use status code 301 for permanent redirects where applicable instead of status code 302.  Better yet, do a URL rewrite rather than a redirect.
  9. Use sub-domains rather than folder names where possible and make sure the sub-domains have meaningful content.
  10. When using user friendly URLs, make sure the URL content terms are meaningful and separated by dashes.
  11. Use Internet standards compliant Site Maps whenever possible.

SSLRedirect Interoperability with ISA Server 2006

In certain senarios, SSLRedirect HTTPS:// redirected URLs will be changed back to HTTP:// URLs by the Microsoft ISA Server 2006, resulting in an endless loop between SSLRedirect and ISA Server 2006.  This is a problem with ISA Server 2006, however can be fixed with an ISA Server 2006 configuration change.

Symptom is outlined as:

  • You have a computer that is running Microsoft Internet Security and Acceleration (ISA) Server 2006 or Microsoft Internet Security and Acceleration (ISA) Server 2004 in a split DNS infrastructure. 
  • You have a Web server that automatically redirects HTTP requests to Secure Socket Layer (SSL) requests (in this case; SSLRedirect).
  • You create a Web publishing rule for the Web server that redirects HTTP requests to HTTPS.
  • You use one of the following configurations:
    • You configure the Web listener to listen for HTTP requests and also to use bridging. 
    • You configure the Web listener and the bridging for both HTTP and for SSL requests (HTTPS). 

In this scenario, when the Web server receives an HTTP request, it redirects the request to the ISA server as an SSL request (HTTPS).

For example, http://www.contoso.com is redirected to https://www.contoso.com.Then, the ISA server translates SSL requests to HTTP requests and redirects it back to the Web server. This causes an endless loop.

The resolution for the ISA Server 2006 problem is outlined in Microsoft Knowledge Base article 924373 .  In the KB article, follow the method 2 explicit mapping configuration change.

Here is an email from a licensee who configured the ISA Server 2006 fix as outlined in the above KB article:

Email_3

DotNetNuke (DNN) 4.8.4 Login Problem

A problem has been reported with DotNetNuke 4.8.4 which is problematic for SSLRedirect.  The problem occurs during the DNN login process.  This DNN 4.8.4 problem has been reported to the DNN support team, and they plan a timely release of 4.8.5, as documented in this discussion thread:

http://www.dotnetnuke.com/Community/Forums/tabid/795/forumid/118/threadid/235241/scope/posts/Default.aspx

The above discussion thread is rather lengthy, six web pages actually, however after reading this thread I think you will conclude to skip over DNN 4.8.4.

Verifying SSL Certificate Installation

Probably the most frequent SSLRedirect installation problem is the fact that one's SSL Certificate is not properly installed beforehand.  I truly believe in a "process of elimination" when it comes to problem isolation, so I would suggest that the easiest thing to do to verify one's SSL Certificate installation is to first create a native HTML Hello World web page (HelloWorld.html).   Once created and one is sure that the SSL Certficate has been installed properly and the web site bindings are properly defined within IIS (port 80 for HTTP traffic and usually port 443 for HTTPS traffic), then simply try invoking the HelloWorld.html web page to ensure its usage with both HTTP and HTTPS.  Use of the simple HelloWorld.html web page will bypass SSLRedirect and any content management system, such as DotNetNuke.  If the HelloWorld.html web page works properly with both HTTP and HTTPs then you are set to try SSLRedirect with your real world web site environment.

Vista - How Do I Read .CHM Help Files ?

Don't we just love Vista ?   However, on occasion you may find that you can not view the content of CHM files on Windows Vista. You can see the table of contents but the actual details are not displayed, illustrated as follows:

CHM Navigation Error

This can occur if the file has come from another computer, and the OS now blocks these from running. CHM is not the only file that can be affected.  I have also seen this issue with Javascript files that are used in Vista Gadgets.

Right click on the CHM file and display the file properties. 

You can click the Unblock button and it will allow the single CHM file to be trusted.

In addition, check that the path to the .CHM file doesn't have any # characters in it anywhere. Otherwise, the help viewer gets confused (# means something specific in HTML). If it does, you'll have to move the file somewhere else.

CHM Properties