A critical vulnerability was discovered in React Server Components (Next.js). Our systems remain protected but we advise to update packages to newest version. Learn More

Magnus Rahl
Feb 21, 2011
  2812
(0 votes)

Search Service problem for users with many groups

The new EPiServer Full Text Search is fully integrated into the RelatePlus package. All content created is added to the search index, including the content’s access rights. That means access control filtering can be done by the indexing service before returning search result. Very convenient for paging of results etc. when you know you can display all the results returned.

Unexpected limitations

Suddenly some of our users didn’t get any search results back. Digging in the log showed several errors and after repeating the queries I could see that they returned 404 not found even though other queries worked perfectly.

After further troubleshooting it was evident that it was the length of the query (which is passed to the REST service in the query string) that was the culprit. Since the user’s groups are passed to the indexing service, a user with many groups performing a search will result in a very long query string.

Since, at least in the RelatePlus standard templates, users are added to a new group for each Club they join the query can grow large very fast.  If you have built your community based on the RelatePlus templates you could have users who are unable to perform searches.

Solution

ASP.NET has a setting for the maximum allowed length of the QueryString (note that this is a server to server call, so no browsers are involved, but they also have limitations). This is set in the configuration / system.webServer / security / requestFiltering / requestLimits elements in the maxQueryString attribute. There is also a maxUrl attribute but they are independent (maxUrl is everything up to the query, but not including it). De default value for maxQueryString if it is not set is 2048, which was the limit my users’ queries hit. I simply increased this value like so:

<system.webServer>
  <security>
    <requestFiltering>
      <requestLimits maxQueryString="16384" />
    </requestFiltering>
  </security>
</system.webServer>
Feb 21, 2011

Comments

Please login to comment.
Latest blogs
A day in the life of an Optimizely OMVP: Learning Optimizely Just Got Easier: Introducing the Optimizely Learning Centre

On the back of my last post about the Opti Graph Learning Centre, I am now happy to announce a revamped interactive learning platform that makes...

Graham Carr | Jan 31, 2026

Scheduled job for deleting content types and all related content

In my previous blog post which was about getting an overview of your sites content https://world.optimizely.com/blogs/Per-Nergard/Dates/2026/1/sche...

Per Nergård (MVP) | Jan 30, 2026

Working With Applications in Optimizely CMS 13

💡 Note:  The following content has been written based on Optimizely CMS 13 Preview 2 and may not accurately reflect the final release version. As...

Mark Stott | Jan 30, 2026

Experimentation at Speed Using Optimizely Opal and Web Experimentation

If you are working in experimentation, you will know that speed matters. The quicker you can go from idea to implementation, the faster you can...

Minesh Shah (Netcel) | Jan 30, 2026