MSPSS: is there life after the helpdesk?

sharing solutions to uncommon IT problems

Posts Tagged ‘IIS

IIS7.5: Could not load file or assembly ‘AjaxControlToolkit’ or one of its dependencies. Access is denied.

leave a comment »


Capture

I’m writing a quick post about this as the info I found on the internet were quite confusing and often superficial…

From my experience, most of the times, this error is due to some missing NTFS rights on a folder for the user that you impersonate when visiting a website (in most cases either the anonymous user or the application pool identity).

Most people tell you to click here and there, adding rights for random users… I suggest to take a more professional (and simple) approach.

  1. Download “Process monitor” (sysinternals)
  2. Add a filter to show log activity only for the PID of the W3WP.exe process running your website (e.g.: process IS 764)
  3. Reproduce the problem
  4. Stop the monitoring and search for “Denied”

You’ll find a line that says which folder is causing the error, the user and the kind of access it requires.

Add that right, no more no less to the folder reported and you should be good to go…

HTH,

Roberto.

Written by zantoro

October 9, 2013 at 4:42 pm

Posted in IIS

Tagged with , ,

Dotnetnuke 7 + ActiveDirectory module: login prompt

with 3 comments


Hello,

we are setting up an evolutionary prototype of Dotnetnuke which will eventually replace our current extranet portal.

I’ve setup the new, out-of-the-box DNNPro_ActiveDirectoryAuthentication module.

Everything works as expected (ie: AD users can login successfully) but often, the first time you open the website you are presented with a login prompt.

Untitled

If you hit cancel, the system shows that /DesktopModules/AuthenticationServices/DNNPro_ActiveDirectory/WindowsSignin.aspx is asking for credentials.

In other words, DNN is trying to get you to automatically sign-in using your system credentials, then, when the login fails, it prompts you with a login box.

you may say: but I never asked to be logged in automatically! Neither did I and I struggled to find a reason and a solution.

In the module there’s no way to enable/disable this feature, but you can limit the automatic sign in to a range of IPs:

I simply limited the range of “allowed” IP to an unused internal ip (e.g.: 192.168.200.10) and that did the trick

Untitled

UPDATE: The solution I provided above was also causing a runtime error: “Index and length must refer to a location within the string. Parameter name: length”. In the end, in order to fix the problem, I had to disable auto-login altogether by commenting out the following line in the <modules> section of the web.config:

<add name=”Authentication” type=”DotNetNuke.Professional.Authentication.ActiveDirectory.HttpModules.AuthenticationModule, DotNetNuke.Professional.Authentication.ActiveDirectory” />

Written by zantoro

June 12, 2013 at 12:51 pm

Posted in DotNetNuke, IIS

Tagged with , ,

Joomla on IIS7.5 – configuration and performances

leave a comment »


Hello,

first of all I would like to spend some nice words on IIS7.5 which is probably the best web server I ever got to work with.

Every time I talk to contractors I employ to develop or update one of our websites, they frown as I mention that we have a full windows environment and start saying that IIS does not support redirections, rewrites, that performance will be impaired, that I DONT HAVE SSH…

What I always tell these people is that I currently have 5 websites PHP/MySQL running under IIS7.5 and they all perform splendidly:

  • IIS7.5 supports PHP out of the box (and the admin configuration window is slightly more user friendly than the good old php.ini)
  • IIS7.5 supports redirections, rewrites and it’s even easier to configure than your htaccess, especially thanks to a handy UI which allows you to test your regular expressions. Moreover you can automatically import rules out of your htaccess file
  • IIS7.5 has 2 levels of caching (kernel and user): you don’t have that on Apache, do you?
  • IIS7.5 allows you to have multiple worker processes serving the same website (called webgarden)… see below my benchmark so see the advantages
  • IIS7.5 allows virtual hosts for FTP sites: quite handy if, like me, you have a busy web server (what do you need SSH for now???)

… and so much more.

Now to the performances… As I said earlier I currently host 5 Joomla PHP/MySQL websites, all of them on IIS7.5 webservers.

I tune around and try different options to get the most out of both Joomla and my web server but with these CMS you better be careful as some modules do not particularly like to be cached indiscriminately.

For Joomla 2.5 in particular I did a benchmark testing of a pretty big, important website:

  • 1000 pages
  • 10000 users per day
  • 9/10 Page rank

I tested it with 100 users, clicking 5 times each on 3 different URLs (chosen randomly).

The stress tool I used is Webserver Stress tool 7 by Paessler.

The different options I used are:

  • IIS7.5 Webgarden: the possibility to have multiple processes serving the same worker process
  • Joomla System (Page) Cache
  • Joomla View Cache (conservative or progressive): by the way, this type of cache doesn’t work well with some modules

I wouldn’t use the IIS7.5 built-in caching options as they mess up Joomla modules pretty badly.

View Cache No No Yes Yes Yes No No
Type of view cache N/A N/A Progressive Progressive Conservative N/A N/A
Page Cache Yes Yes No No No No No
Worker Process (Web Garden) 1 5 5 1 5 5 1
Errors 0 0 0 0 0 0 0
Avg time per page (seconds) 1.6 0.8 11 18 16 28 36
Pros SuperFast even under heavy load – no impact on events module (see view cache) SuperFast even under heavy load – no impact on events module (see view cache) Fast and component based. Fast and component based. Fast and component based. Always up to date due to no outdated cache Always up to date due to no outdated cache
Cons The admin area is not cachedThe hit counters are not incremented (we don’t use them) The admin area is not cachedThe hit counters are not incremented (we don’t use them) It causes an issue on the events page which we could probably solve It causes an issue on the events page which we could probably solve It causes an issue on the events page which we could probably solve Fast enough if server is unused but much slower under heavy load Fast enough if server is unused but much slower under heavy load

To conclude, I see no reasons for using anything more than page cache. View cache also seems interesting but you have to test each module and disable the ones that do not support it.

The webgarden is also a nice surprise, I never use it on ASP, ASP.NET websites as web gardens mess up a little Application variables but for Joomla, I haven’t experienced any problem yet.

Written by zantoro

December 23, 2012 at 11:15 pm

Posted in IIS, Joomla

Tagged with ,