Some hosts have something called mod_security installed on their server. This is a module added to the server application which is supposed to provide additional back-end security checks on the other software running on the server. While it can be useful, when properly configured, many hosts do not configure it correctly. As a result, it triggers security protocols on standard actions which should be allowed, causing errors which include "403" or "Access denied" errors, 404 errors, login problems, difficulties with modifying categories and boards, or similar issues.
The following is an example of a post which would generate an error if mod_security is enabled on a server: Have you ever used cURL? You can find information about it at http://curl.haxx.se/. More specifically, libcurl is useful for accessing URLs in a program. It could be helpful if you're a programmer.
SMF cannot prevent this error, because it is created by the server and Apache, before SMF even gets a say in anything. However, depending on your host, it may be possible to disable this unnecessary and unwanted behaviour. Since SMF is able to filter requests without resorting to grasping blindly at keywords, disabling mod_security should be completely safe. It is recommended that you talk to your host about having the mod_security filtering rules changed.
To try to disable it, you need a file called .htaccess. If you already have a file with that name, you need to open it with a decent text editor such as Notepad++, and add the code below to it (at the top or at the bottom). Make sure, however, to create a backup before overwriting anything. If you do not already have this file, create it. If your desktop PC will not allow you to edit a file called .htaccess, create the file with another name, such as .htaccess.txt. You can rename it after you load it up to the server. Put the following in the htaccess file:
<IfModule mod_security.c> # Turn off mod_security filtering. SMF is a big boy, it does not need its hands held. SecFilterEngine Off # The next part below probably is not needed, but better safe than sorry. SecFilterScanPOST Off </IfModule>
Upload this to your server. If you used a different name, delete the .htaccess file on the server and rename the new file .htaccess.
If your host does not allow you to disable mod_security, the forum may no longer load. If this happens, just remove the code which was added or replace the file with the backup you made earlier. If you have to do this it means that you cannot disable mod_security filtering. Instead, you can ask your host if they can disable mod_security for you. If they will not disable it, and you do not wish to continue to have problems with your forum which mod_security causes, you can seek out a new host. Note, in addition, that problems with mod_security occur frequently with oversold hosts.
If your issue with mod_security is generating a 403 or a 406 error page, or just returning you to the forum index, when you try to create or edit a category, please try this patch file which we are asking people to test. It has had success is several instances, so far. If this is continued to be reported as successful, we will incorporate it into future versions of SMF.