STEVEN QUAYLE
 Posts:38
Send PM:
 | | 27 Dec 2009 02:00 PM | | Hi I have downloaded and installed Page Blaster 3.4.2 Community Edition. I successfully installed the package (no errors). I note that the install procedure went on to say that I should add the licence key at this point. I dod not add any key as - as far as I am aware, this is a trial edition and I do not have a licence key.
When I navigate to Admin-> Page Blaster the top module displays "A critical error has occurred. Object reference not set to an instance of an object."
Also, a fodler has been created for the cache but I do not see any entries in the folder after navigating across a number of pages.
Can you please advise as to how I can get Page Blaster working.
Many thanks,
Steve | | | |
|
|
|
John Mitchell
 Posts:4350
Administrator Send PM:
 | | 27 Dec 2009 02:56 PM | | Check in the web.config file to see if there is a PageBlaster line that says preCondition="classicMode,ManagedHandler".
If there is, try remove the classicMode part to make it : preCondition="ManagedHandler"
Let me know if that fixes it, I may need to update the installer.
Thanks | | | |
|
STEVEN QUAYLE
 Posts:38
Send PM:
 | | 27 Dec 2009 03:21 PM | | Yes, did exist - I changed it.
<!-- <add name="PageBlasterHandler" verb="*" path="*.css,*.js,*.gif,*.jpg,*.jpeg,*.png" type="Snapsis.HttpModules.PageBlaster.StaticFileHandler, Snapsis.HttpModules.PageBlaster" preCondition="managedHandler" /> -->
Isn't this commented out though? I have made that change and restarted the app - but still get the error. | | | |
|
STEVEN QUAYLE
 Posts:38
Send PM:
 | | 27 Dec 2009 03:31 PM | | Log entry :
AssemblyVersion: 5.1.4 PortalID: 0 UserID: 1 UserName: host ActiveTabID: 127 ActiveTabName: PageBlaster RawURL: /Admin/PageBlaster/tabid/127/Default.aspx AbsoluteURL: /Default.aspx AbsoluteURLReferrer: http://www.lexido.com/Admin/tabid/40/Default.aspx UserAgent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; FunWebProducts; .NET CLR 1.0.3705; .NET CLR 1.1.4322; Media Center PC 4.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729) DefaultDataProvider: DotNetNuke.Data.SqlDataProvider, DotNetNuke.SqlDataProvider ExceptionGUID: d3caa023-fab1-4966-a31c-6fcc7f337203 InnerException: Value cannot be null. Parameter name: input FileName: FileLineNumber: 0 FileColumnNumber: 0 Method: System.Text.RegularExpressions.Regex.Match StackTrace: Message: System.ArgumentNullException: Value cannot be null. Parameter name: input at System.Text.RegularExpressions.Regex.Match(String input) at System.Text.RegularExpressions.Regex.Match(String input, String pattern, RegexOptions options) at Snapsis.HttpModules.PageBlaster.CachedRequest.SetFilePath() at Snapsis.HttpModules.PageBlaster.CachedRequest..ctor(HttpApplication app) at Snapsis.DNN.PageBlaster.PageBlasterConfig.InitializeComponent() at Snapsis.DNN.PageBlaster.PageBlasterConfig.OnInit(EventArgs e) at System.Web.UI.Control.InitRecursive(Control namingContainer) at System.Web.UI.Control.AddedControl(Control control, Int32 index) at System.Web.UI.ControlCollection.Add(Control child) at DotNetNuke.UI.Modules.ModuleHost.InjectModuleContent(Control content) at DotNetNuke.UI.Modules.ModuleHost.CreateChildControls() at System.Web.UI.Control.EnsureChildControls() at DotNetNuke.UI.Modules.ModuleHost.get_ModuleControl() at DotNetNuke.UI.Containers.Container.get_ModuleControl() at DotNetNuke.UI.Containers.Container.ProcessModule() at DotNetNuke.UI.Skins.Pane.InjectModule(ModuleInfo objModule) | | | |
|
John Mitchell
 Posts:4350
Administrator Send PM:
 | | 27 Dec 2009 07:46 PM | | It is probably in another place that is not commented out. | | | |
|
STEVEN QUAYLE
 Posts:38
Send PM:
 | | 28 Dec 2009 01:15 AM | | Hi John, I have searched web.config for the entry and there is no match. I will send you the contents of my web.config via PM. Please do advise for any further steps.
Many thanks,
Steve | | | |
|
STEVEN QUAYLE
 Posts:38
Send PM:
 | | 31 Dec 2009 01:11 AM | | Dear support, I would really appreciate a reply to my call. I have installed your product and it is not functionaling.
Many thanks,
Steve | | | |
|
John Mitchell
 Posts:4350
Administrator Send PM:
 | | 31 Dec 2009 09:43 AM | | Do you have a Snapsis.PageBlaster.config file in the root of your website? | | | |
|
STEVEN QUAYLE
 Posts:38
Send PM:
 | | 01 Jan 2010 05:44 PM | | Hi John, Yes, I do.
<snapsis> <pageBlaster page-param="tabid" ext-cachekey-parameters="[PB:Request.Browser.Browser]" cache-folder="/DesktopModules/Snapsis/PageBlaster/Cache" config-folder="/DesktopModules/Snapsis/PageBlaster/Config" cached-roles="" cached-users="" cached-languages="" memory-cache-interval="01:00:00:00" memory-size-limit="25" disk-cache-interval="14:00:00:00" disk-size-limit="100" blocked-useragents="" blocked-ipaddresses="" compression-algorithm="gzip" compression-level="high" attach-filter-early="false"> <trace level="Header" file-path="/PageBlaster.trace.webinfo" /> <excludePaths> <path pattern="(/admin/|/host/)" excludeFrom="All" /> <path pattern="ctl[/=](edit|module|tab)" excludeFrom="Replacements" /> <path pattern="\.js$|\.css$|\.html$" excludeFrom="Replacements" /> <!--Comment or remove the next two exclude paths to further optimize DNN JS & CSS files --> <path pattern="\.js$" excludeFrom="MergeJS" /> <path pattern="\.css$" excludeFrom="MergeCSS" /> <!--Uncomment the next line if you have trouble with post-backs or Ajax--> <!--<path pattern="(Web|Script)Resource" excludeFrom="All" />--> </excludePaths> <providers> <provider name="DNNFilter" interface="IFilterProvider" type="Snapsis.DNN.PageBlaster.DNNFilterProvider, Snapsis.DNN.PageBlaster"> <replacementRules> <rule> <ruleName>Move js links to Head</ruleName> <searchFor><![CDATA[(</head>.*?)(<script[^>]+(ScriptResource|ControlPanel|Search|dnn[^>]*)\.(axd|js)[^>]+></script>)]]></searchFor> <replaceWith>$2$1</replaceWith> <repeatTimes>99</repeatTimes> </rule> <rule> <ruleName>Move dnn.Controls inits to bottom</ruleName> <searchFor><![CDATA[(<script[^<]+dnn\.controls[^<]+</script>)(.*?)</body>]]></searchFor> <replaceWith><![CDATA[$2$1</body>]]></replaceWith> <repeatTimes>99</repeatTimes> </rule> <rule> <ruleName>Move initWidjets.js to bottom</ruleName> <searchFor><![CDATA[(<script[^>]+initWidgets\.js[^>]+></script>)(.*?)</body>]]></searchFor> <replaceWith><![CDATA[$2$1</body>]]></replaceWith> <repeatTimes>99</repeatTimes> </rule> <rule> <ruleName>Move dnnNav inits to bottom</ruleName> <searchFor><![CDATA[(<script[^<]+dnn\.setVar[^<]+</script>)(.*?)</body>]]></searchFor> <replaceWith><![CDATA[$2$1</body>]]></replaceWith> <repeatTimes>99</repeatTimes> </rule> </replacementRules> </provider> <provider name="GenericFilter" interface="IFilterProvider" type="Snapsis.HttpModules.PageBlaster.GenericFilterProvider, Snapsis.HttpModules.PageBlaster"> <replacementRules> <!--<rule> <ruleName>White Space</ruleName> <searchFor><![CDATA[>\s+<]]></searchFor> <replaceWith><![CDATA[><]]></replaceWith> </rule>--> <rule> <ruleName>MailTo Cloaker</ruleName> <searchFor>href=['"]?mailto:(\w+[a-zA-Z0-9.\-_]*)@(\w+)\.(\w+)['"]?</searchFor> <replaceWith>href="javascript:window.location.replace('ma'+'ilto:'+'$1'+'@'+'$2'+'.$3')"</replaceWith> </rule> <rule> <ruleName>Move Viewstate</ruleName> <searchFor><![CDATA[(<input[^>]+__VIEWSTATE[^>]+>)(.*?)</form>]]></searchFor> <replaceWith><![CDATA[ $2 <div>$1</div> </form> ]]> </replaceWith> </rule> </replacementRules> </provider> <provider name="DNNUserController" interface="IUserProvider" type="Snapsis.DNN.PageBlaster.DNNUserProvider, Snapsis.DNN.PageBlaster" /> </providers> </pageBlaster> </snapsis>
<!-- The PageBlaster config file is used for setting the default values for Caching and Compression of pages page-param: Set to the querystring variable that determines when a new page is built from the database ext-cachekey-parameters: Set to PageBlaster Request Tokens to add extra variables that will make each page cache uniquely cache-folder: Set to a Physical file path like C:\DotNetNuke or to a virtual path from the root of your website, e.g. /portals/_default/Cache If you are running under a virtual directory then you will need to include that as part of the virtual path, e.g. /DotNetNuke/portals/_default/Cache The directory you use must exist first, and must have modify permissions set for the identity that your website is running under. config-folder: The configuration file for each dynamic page will be stored in this folder. Make it a seperate folder from the cache to facillitate delete of cache files without harming config files. cached-roles: A semi-colon seperated list of roles that you want to cache (can use regular-expressions) cached-users: A semi-colon seperated list of usernames that you want to cache (can use regular-expressions) cached-languages: A semi-colon seperated list of languages that you want to cache (can use regular-expressions) limiting the languages that you cache will make the number of cached pages lower and increase performance especially on a low traffic site that has visits from multiple countries leave this attribute blank if you are not serving pages differently based on language if this attribute is not blank and the users accepted language does not match any of the cached languages then the first cached language in the list will be used. blocked-useragents: specify user agents to block in a semi-colon seperated list (regular expressions can be used) blocked-ipaddresses: specify IP addresses to block in a semi-colon seperated list (regular expressions can be used) memory-cache-interval: Specify a time span in days:hours:minutes:seconds for a cached page to stay in memory. memory-size-limit: Set to to limit the size of the cache in memory (Megabytes) disk-cache-interval: Specify a time span in days:hours:minutes:seconds for a cached page to stay on the disk after the disk cache interval has elapsed the cached page will be recreated automatically the next time it is called. disk-size-limit: Set to to limit the size of the cache on disk (Megabytes) compression-algorithm: Specify the preferred algorithim for HTTP compression (gzip or deflate) compression-level: Specify the level of compression ( Highest, Higher, High, More, Normal , Less, Low, Lower, Lowest, None ) The higher the level the more time and more CPU resourses your server will need "High" is a good compromise of compression to server resources attach-filter-early: set this to true if you are having trouble with other httpModules that may not be working because the html has been compressed. If this is set to tru you may need additional excludes setup because attaching it later allows PageBlaster to make automatic exclusions based on the response. <excludePaths>: Each request will be checked against this list of paths to see if it should be excluded from caching/compression. The pattern attribute uses Regular Expressions. Specify the most like paths first so to speed up this process. Only requests of content-type="text/html" that are authenticated are cached/compressed so this should be a limited list The exludePath of <path pattern="\?(?!tabid)" excludeFrom="All" /> will exclude all requests that do not have "tabid" in the querystring unless they do not have any querystring. <trace>: The trace node allows you to turn on tracing to a log file. The settings for level are None, Exceptions, Information and Debug. Setting the level to Debug will produce a lot of entries to the log, and should only be used for short periods of time to diagnose problems. After changing the level attribute, the application will need to be restarted to make it take effect. <providers> Replacement Filters can be included in this section. Introduced in the 2.1.0 version of PageBlaster. A generic replacement filter that is already configured for white space removal. You can also add other replacement rules here that will be applied to all pages.
--> | | | |
|
STEVEN QUAYLE
 Posts:38
Send PM:
 | | 09 Jan 2010 06:37 AM | | Hi John, Is there anything else I can provide to help you?
Please advise,
Steve | | | |
|