You are here: Saotn.org » IIS » Page 3

IIS

Internet Information Services, the HTTP web service on Windows Server

How to set a good PHP realpath_cache_size

The PHP directive realpath_cache_size sets the size of the realpath cache to be used by PHP. Increasing realpath_cache_size might greatly improve PHP performance, as PHP states: “this value should be increased on systems where PHP opens many files.” Setting a correct value for PHP realpath_cache_size can greatly improve PHP performance and optimize WordPress – and other CMS’s – websites.

Conditionally start Application Pools on remote IIS web servers

Start all stopped application pools that have Autostart set to true

Start stopped application pools with AppCmd or PowerShell in a loop. In my routine, I occasionally have to start multiple website application pools when they are in a stopped state. On more than one web server. Being a lazy system administrator, I find it too much work to log on every server. Therefore I start those application pools in a loop. A condition for me to start application pools is that the application pool autostart parameter is set to true. This is because I set autostart to false when I disable hacked websites, and those application pools may not be started until all problems are resolved of course. To start application pools, I use the AppCmd command.

Mod_evasive on IIS

Learn how to set up website DDoS protection with .htaccess and mod_evasive on Windows Server IIS

Mod_evasive is a module for Apache and Windows Server IIS (using Helicon Ape). It provides protection and evasive action in the event of an HTTP DoS-, DDoS or brute force attack. Detection is performed by creating an internal dynamic hash table of IP Addresses and URIs, and denies an IP address access to a website if it’s requesting the same page more than 10 times a second. This is configurable.

Remove IIS Server version HTTP Response Header

Microsoft Internet Information Services logo

Remove HTTP response headers in Windows Server IIS 10 and ASP.NET

Windows Server IIS loves to tell the world that a website runs on IIS. It does so with the Server header in the HTTP response, as shown below. In this post I’ll show you how to remove response server headers in IIS. You don’t want to give hackers too much information about your servers, heh? ;-).

How to hide the .php file extension with IIS URL Rewrite Module

Extensionless URLs in IIS

Sometimes it’s important to remove -or hide- the file extension of scripts you use. Security by obscurity might be that reason, if you don’t want others to know what script language you are using for your website, or for static site hosts. This example will hide the .php extension using the IIS URL Rewrite module, in a ready to use web.config & .htaccess example.

IIS Outbound Rules with gzip compression

Saotn.org uses used URL Rewrite Outbound Rules in IIS, to offload content from a different server and/or host name. This is also known as IIS with URL Rewrite as a reverse proxy, and should improve website performance. Just recently I noticed Outbound Rules conflicted with gzip compressed content. The following HTTP 500.52 URL Rewrite Module Error was thrown:

How to clean up Contact Form 7 temporary captcha files on IIS web servers

Contact Form 7 is a WordPress plugin that provides a simple but flexible contact form. On IIS, Contact Form 7 captcha has one HUGE disadvantage: temporary captcha files placed in wp-content/uploads/wpcf7_captcha, are not automatically removed. The files are made read only. Here is how to remove Contact Form 7 temporary captcha files on IIS

Target multiple ASP.NET versions with AppCmd.exe

How to target multiple ASP.NET versions with AppCmd?

When administering an IIS web server you frequently have to use AppCmd.exe to make configuration changes. Whether it is for a specific web site or server wide. Some think AppCmd is very limited: if you don’t know the options to use, you may think you can only address the x64 .NET Framework version, or only x86, or you can only target the current active .NET Framework version. Fortunately this is not true, you can address both x86 and x64 versions of .NET with AppCmd. Read how…