In BBQ Pro settings, there is an option called “Limit Requests”. This quick post explains what the option does, how it works, and important information that you should know before deciding whether or not to enable.

How it works

In the BBQ Pro settings, there is an option called “Limit Requests”, with a description that says “Limit URL requests to 2,000 characters”. When enabled, this option tells BBQ to block any request URI that contains more than 2,000 characters. So for example, if your blog starts getting hit by some bot making super long URI requests, enabling this option will block the long requests.

By default the Limit Requests setting is disabled.

Important!

Before enabling the Limit Requests option, make sure to check to make sure that none of the URLs used at your site exceed 2,000 characters. Otherwise things will break. This includes not only URIs defined by your own site, but also applies to any social media or other 3rd-party URIs that might be involved. For example the following services may use very long URIs, things like:

  • Google Adsense
  • Facebook API stuff
  • Other social media stuff
  • Other third-party services
  • Etc.

It is super important to understand the types of URIs that are used by your site. That will enable you to make an informed decision regarding the Limit Requests option. So if your site makes use of anything that may make use of super long URIs, do NOT enable this option.

If in doubt..

If you have any doubts about whether or not to enable the Limit Requests option, do NOT enable it. Otherwise things will not work correctly and things can break. Only enable the setting if you are 100% positive that no super long URIs are in use at your site.

If you decide to enable..

If you decide to enable the Limit Requests option, play it smart and enable the “Email Alerts” option. That way BBQ will send you email alerts for each blocked request. So you can monitor the results for a few days (or whatever reasonable time frame) and check if any important URIs are getting blocked due to excessive length. Then if any false positives are found, you can simply disable the Limit Requests option to resolve the issue immediately.

Customize Limit Requests

If you would like to enable the Limit Requests option, but want to set a different limit, add the following custom code snippet.

function bbq_check_length($length) {

	return 2000; // limit

}
add_action('bbq_check_length', 'bbq_check_length');

Change 2000 (seconds) to whatever is required. This code may be added via theme functions or simple plugin.