On 12/10/2010 03:47 AM, Ilmari Karonen wrote:
On 12/10/2010 12:39 AM, Brion Vibber wrote:
As Bryan noted, it looks like what's
happening is that your system has
$wgScriptPath and $wgArticlePath pointing at the same place. Your rewrite
rules at the web server level are excluding files such as api.php, but
MediaWiki doesn't know about that exclusion; it sees an incoming URL in the
$wgArticlePath space and ends up thinking it has an article title that it
needs to extract.
Try setting $wgUsePathInfo = false in your LocalSettings.php. This should
bypass these checks, and will avoid interfering with your input variables.
Of course this requires that your rewrite rules in the web server are using
the title query string parameter, not appending it to the path.
This must be a relatively recent[1] regression: I use a similar setup on
my wiki, and it worked just fine until I upgraded to svn trunk HEAD
recently. It also seems to be only affecting api.php; normal requests
work just fine.
Officially supported or not, I vote we fix it.
[1] "Relatively recent" here meaning since the 1.16 branch or so.
OK, it seems I was mistaken, this was an old bug. Not sure why I hadn't
noticed it before. Here's a report from 2008:
https://bugzilla.wikimedia.org/show_bug.cgi?id=16019
Anyway, it turned out to be easy enough to fix, as I've done in r78209.
The patch is simple enough that it should probably apply cleanly to
old MW versions too.
--
Ilmari Karonen