Postmortem: The Wiki Is in French

Postmortem: The Wiki Is in French

So, as the crawler indexed the admin pages, it would follow the links and, as a side effect, would change configuration settings for the wiki, including, but not limited to, the default language for the site. After determining the source IP of the crawler (one of the admins was experimenting with Nutch as a supplement to the wiki’s impoverished search capabilities and had authenticated the crawler using their admin credentials) and stopping the crawl we stepped back in wonder at how a major application vendor had missed such a core tenet of web application architecture…GET requests (along with HEAD, OPTIONS and TRACE methods) should have no side effects and must not change application state. If the wiki had used discrete forms for each option that POST’ed the changes for language and other settings, the crawler would not have triggered state changes.

Source: www.hccp.org