DotNetNuke Can’t Login Index #: 0

The Problem

Index #: 0

image

Recently while working with a DotNetNuke website, we found that attempting to login to the site generated this error:

SQL Exception
Error Details
File 
Error   Index #: 0
Source: .Net SqlClient Data Provider
Class: 17
Number: 1105
Procedure: AddEventLog
Message: System.Data.SqlClient.SqlException: Could not allocate space for object ‘dbo.EventLog’.’PK_EventLogMaster’ in database ‘www.sitedatabase.com’ because the ‘PRIMARY’ filegroup is full. Create disk space by deleting unneeded files, dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(SqlConnection connection, CommandType commandType, String commandText, SqlParameter[] commandParameters) at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(String connectionString, CommandType commandType, String commandText, SqlParameter[] commandParameters) at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(String connectionString, String spName, Object[] parameterValues) at DotNetNuke.Services.Log.EventLog.DBLoggingProvider.SqlDataProvider.AddLog(String logGUID, String logTypeKey, Int32 logUserID, String logUserName, Int32 logPortalID, String logPortalName, DateTime logCreateDate, String logServerName, String logProperties, Int32 logConfigID) at DotNetNuke.Services.Log.EventLog.DBLoggingProvider.DBLoggingProvider.WriteLog(LogQueueItem logQueueItem)

After a investigating the site and server we found that this was caused by the SQL server running out of room on the disk hosting the database connected to this DNN site.

The Solution

Free up more space on the SQL database disk.

CRM 2011 Rollup 10 Invalid Argument Error

CRM 2011 Rollup 10 Killed My CRM

image

After installing CRM 2011 Rollup 10 (not 9 as that is MIA) you receive an Invalid Argument messages as per the image above. This happens after you login to an IFD deployment.

For all we know it may happen on the CRM on premises but we have not managed to test that.

You may also have a CRM Platform Trace Error:

Crm Exception: Message: A non valid page number was received: 0, ErrorCode: –2147220989

CRM’s Fetch Throttling abilities have been disabled or modified from the default values.
Re-enable CRM’s default Fetch Throttling settings.

The solution

1. START | RUN | “regedit” | OK

2. Locate and select the registry subkey: HKEY_LOCAL_MACHINESoftwareMicrosoftMSCRM

image

Change the value on: TurnOffFetchThrottling

to 0

image

In fact if you find either MaxRowsPerPage or the TurnOffFetchThrottling registry keys set them both to 0 or delete them.

3. START | RUN | “iisreset” | OK

(This will restart IIS)

Login to CRM and you should be good to go.

Cantaport Shading System

Cantaport Shading System

Recently our client Totally Outdoors added a new cantaport shading system to their product list.

This Melbourne based builder now provides some commercial shading solutions that are excellent for both domestic and commercial designs.

image

Check out their website here: http://www.totallyoutdoors.com.au/products/cantaport-shading-system/

Cantaport shading system design benefits provides an exciting range of options particular for School, Sporting clubs  and Local Councils for uses such as Open Shelters for bikes, Bus, play ground and sports grounds. Totally Outdoors professional structure of Architectural designs, 20 years of providing installed outcomes combine to deliver known outcomes across a range of project types.

DotNetNuke (dnn) jQuery problems admin menu

image

DotNetNuke jQuery Problems

Recently there was an update to jQuery that caused some problems with DotNetNuke. The problems include:

  • Strange or missing popup effects in custom jQuery modules
  • Admin menu hiding the menu items on Standard DNN Dark Knight Skin
  • Modules using jQuery failing to function as desired

The Problem

The problem is associated with some bugs in the jQuery released and hosted googleapis. The bugs are not related to DotNetNuke directly but the jQuery used in many instances of jQuery.

The Solution

The solution is an easy one. You just need to login to your DotNetNuke website with a Host Account, and modify the jQuery settings under the HOST / ADVANCED SETTINGS to a more recent and bug free version of jQuery UI.

 

image

Pasting this URL: https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.23/jquery-ui.min.js into the “Hosted jQuery UI URL" and ensuring the “Use Hosted jQuery Version” is ticked.

Opencart on IIS 7.5 Windows 2008 Server FTP Permissions Changing

Opencart and PHP running on IIS, we found Permissions incorrect on uploaded files

After working with IIS server running PHP, we found the files uploaded through the web interface of the opencart CMS failed to inherit the correct permissions.

After spending weeks time to resolve this problem, believing that it was a glitch that required file permissions to be reset we found an easy solution.

The Problem

The problem lies with the PHP system running on IIS. When you use a web interface to upload files to your PHP CMS website, they are initially loaded to the PHP defined temporary folder. The temporary folder is set in the PHP.ini file.

To find this file and check the setting, you do this:

Open IIS and select PHP Manager

NewImage

 

Then Check phpinfo()

NewImage

 

Then search the php.ini file that opens for “upload_tmp_dir”

Notice that the default location (unless you have changed it) is: c:\windows\temp

NewImage

Now navigate to that folder on your IIS server rick click and select Properties / Security Tab and find the IIS_IUSRS security group.

NewImage

Edit the permissions there to match the permissions of your IIS website folder that is causing you the grief. Probably Read Write at least is needed.

Why the solution works.

As files are uploaded through the website interface, they land in the temp directory. Once there they inherit the temp directory permissions before being moved onto the website folders. By adding the website security to the temp folder, you allow the files to move across with the correct permissions set.

This would be applicable for WordPress running on IIS server, or Opencart.

WordPress 3.5 Manual Fix

Below is the manual fix you can apply to be able to get your WordPress 3.5 install working correctly, there are two options that should work.

1) In the file wp-config.php, add the following line before “That’s all, stop editing”

define( 'WP_TEMP_DIR', ABSPATH . 'wp-content/' );

or

2) In the file /wp-includes/class-http.php comment out lines 144 and 145, which look like the following:

if ( ! is_writable( dirname( $r['filename'] ) ) )
	return new WP_Error( 'http_request_failed', __( 'Destination directory for file streaming does not exist or is not writable.' ) );

After applying one of the above fixes you should be able to add/upgrade your plugins and upgrade your themes, and will allow you to use the auto upgrade feature when WordPress version 3.5.1 is released.

Opencart .php on IIS 7.5 Permission Denied

image

The Problem

We ran into an interesting issue while playing with Opencart on IIS 7.5. The issue was around a common third party module being used called Magic Zoom Plus.

The error showed it’s self with the loading of some junk text at the beginning of many pages when loading.

The text looked like this:

Warning: file_put_contents(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus.css): failed to open stream: Permission denied in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 171Warning: unlink(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus.css): Permission denied in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 172Warning: rename(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus

.css~backup,C:\inetpub\wwwroot\www.domain.com\admin\controller\module\

magictoolbox/magiczoomplus.css): Access is denied. (code: 5) in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 173Warning: file_put_contents(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus.css): failed to open stream: Permission denied in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 171Warning: unlink(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus.css): Permission denied in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 172Warning: rename(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/

magiczoomplus.css~backup,C:\inetpub\wwwroot\www.domain.com\admin\controller\module

\magictoolbox/magiczoomplus.css): Access is denied. (code: 5) in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 173Warning: file_put_contents(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus.css): failed to open stream: Permission denied in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 171Warning: unlink(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus.css): Permission denied in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 172Warning: rename(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus

.css~backup,C:\inetpub\wwwroot\www.domain.com\admin\controller\module\

magictoolbox/magiczoomplus.css): Access is denied. (code: 5) in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 173Warning: file_put_contents(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus.css): failed to open stream: Permission denied in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 171Warning: unlink(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus.css): Permission denied in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 172Warning: rename(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus

.css~backup,C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox

/magiczoomplus.css): Access is denied. (code: 5) in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 173Warning: file_put_contents(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus.css): failed to open stream: Permission denied in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 171Warning: unlink(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus.css): Permission denied in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 172Warning: rename(C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/magiczoomplus

.css~backup,C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox/

magiczoomplus.css): Access is denied. (code: 5) in C:\inetpub\wwwroot\www.domain.com\admin\controller\module\magictoolbox\module.php on line 173

 

We knew immediately that it is a windows server permission error. However the strange thing is that we were pretty sure that the permissions were correct. We looked around at the settings and found them to be correct too.

The Solution

We ended up going to the website root, and selecting permission (on the server with RDP) and resetting the entire folder and all sub folders permissions. This fixed the problems. Can’t explain why but this is the second time we have needed to do this while running PHP on IIS. May be time to change back to a real php server.

The Permanent Fix

We have done details here that explain how to stop the being necessary.

Opencart on IIS 7.5 Windows 2008 Server FTP Permissions Changing

SmarterMail Automatic Reply Email Message

image

Setup Auto Reply (Auto-Responder) in SmarterMail

To configure Auto-Reply in SmarterMail, you login to the webmail account you wish to setup a reply for.

https://mail.interactivewebs.com

Login with the email address of the account in question, and the password provided.

Then Select Settings / autoresponder

image

Select the Enable auto-responder / then the Auto-Responder Message tab

image

Type your Subject / Message

image

Then click Save, and you are done!

SmarterMail Autodiscover setup configuration

Setup of SmarterMail Autodiscover configuration

image

A simple understanding of autodiscover is that it is the configuration necessary to allow advanced email programs like macmail and outlook to configure themselves with only an email address and password. No more telling clients all the server settings necessary to get them all setup.

At least that is the theory.

Exchange server has supported it for some time, but configuration under a multi domain setup is a total pain in the butt. Typical off MS to dream something up, then balls it up in the implementation.

SmarterMail does a much better job of it. Configuration is virtually non existent, it basically just works.

http://portal.smartertools.com/KB/a2415/set-up-auto-discovery-with-smartermail.aspx

But their article is a little skimp for the non server admins.. so this is a step through course.

Assuming that you are using Microsoft DNS server for your DNS hosting (and I realise that most probably don’t but it is the more difficult to configure), this is how you add the SRV records mentioned in the article above.

On the DNS server, select New other record on the domain in question.

image

Scroll down and select SRV

image

Type the name: _autodiscover

Change the port to: 443

Put in your mail servers address that will respond to an HTTPS request.

image

The resulted record looks like this:

image

If you click on the _tcp link, it will look like this:

image

Local Testing

On your local machine, bring up a command prompt “CMD” and type in nslookup:

image

Gives this:

image

Type in “set type=SRV”

image

Then type in :_autodiscover._tcp.dnnform.com  (replace dnnfrom.com with your domain that you just configured above) It should reply wiht the sver hostname matching the record you created in the DNS server above:

image

External Testing

Performing an external test of the SRV record, and the fact that the server responds with XML reply.

Navigate to: https://www.testexchangeconnectivity.com

image

Select the Outlook Autodiscover from the list of services.

Enter an email address on the domain you have just set up with the service.

In the case above, we are using the domain “dnnform.com” so the test address we will use is: test.dnnform.com (it does not need to exist on the smartermail server)

The Domain \ User name: test\test (it will not be used)

Password: test (it will not be used)

Then perform test.

image

The result you are looking for when expanded looks something like this.

image

This shows that the request was directed to and received some XML response from the server.

All good.

Help

If anyone needs professional assistance with their SmarterMail setup or similar, please feel free to contact us on our website at: http://www.interactivewebs.com

Opencart – HTTP Error 500.50 – URL Rewrite Module Error 0x80070005 Handler StaticFile

Problem

500 – Internal server error.

There is a problem with the resource you are looking for, and it cannot be displayed.

 

While working with Opencart shopping cart on an IIS server, we encountered this while browsing to a static image file that was uploaded as a website logo file.

image

Solution

The problem turned out to be related to IIS permissions. The folder structure hosting the website needed: IIS_IUSRS(<servername>\IIS_IUSRS) – modify to include Modify permissions.

As per this article: http://www.interactivewebs.com/blog/index.php/websites/creating-a-new-opencart-deployment-on-a-windows-server-iis/

Once we fixed that the problems all were solved.

DotNetNuke Event message: Forms authentication failed for the request. Reason: The ticket supplied was invalid. EventID 1315

image

The Problem

We were receiving some really really strange behaviour with a dotnetnuke website.

The log files showed:

Event message: Forms authentication failed for the request. Reason: The ticket supplied was invalid. with EVENT ID 1315

 

The behaviour was this:

Login with Internet Explorer worked.

Login with some versions of firefox failed others worked

Login with Chrome failed.

When login failed, the browser would refresh and then show the page you were on before login.

Now in this instance we tried nearly everything we could think of. we tried different application pools different.net settings in IIS. and we hand we have a good idea of both server management and asp.net.

He also had is particularly confused that other DotNetNuke websites on this particular server were running just fine.

To cut a long story short the problem turned out to be very specific that site we were using.

Solution

We were in the process of migrating somebody else’s site to our servers, and we had exported their site and site content using the DotNetNuke template feature. Ordinarily this would work just fine, however in this case the user on the other website had defined the login.aspx page to have administrator only privileges. They had set the login link from the skin to automatically directed to the login.aspx webpage. In the site settings they had defined no page for the DotNetNuke login page.

What this meant was that as the user attempted login to the DotNetNuke website, the attempt to call the login.aspx page was made and the DotNetNuke automatic lockout protection system was called in to play. This lockout protection system will throw up the standard DotNetNuke login screen, if the page is either undefined or unavailable as with both the case with this website. It just so happens that this lockout protection system doesn’t work particularly well with chrome. That’s a whole not a problem and I don’t intend to solve.

The solution here was to login using Internet Explorer, enable permissions on the login.aspx page which in the DotNetNuke website was simply called login. I was then able to select this page as the login page in the admin/site settings page. Once the login page was correctly defined I then ensured that the login module that come standard with DotNetNuke was included on this page.

After making these changes to the settings, we stopped receiving the error message:

DotNetNuke Event message: Forms authentication failed for the request. Reason: The ticket supplied was invalid. EventID 1315

And the site continued to operate correctly from there. Now whilst this was a very particular configuration that was imported from an invalid template website. I have noticed that in forums discussing this event ID, nobody has come up with a solution suggesting to look for the validity of your login settings within DotNetNuke. Hence the reason for this blog post.

I hope that saves somebody a lot of time, as I blew nearly 2 days try to resolve this one.

If anybody needs assistance with this type of problem, please feel free to contact us on our website.