Looks like drupal is still checking ?q= parameter for path even if clean url is enabled.

I have a page with the url of "search".
"http://mysite.com/search" works fine.

However when I add a "?q=something" parameter to the page, so the url is now "http://mysite.com/search?q=something". It goes to "page not found" error. The message is generated by drupal, not standard 404 error. It's obvious that drupal think parameter passed in q= is the path user requested, even if clean url is working.

Is there any way to disable drupal from checking GET variable "q" for path? I think since clean url is enabled, the checking of "q" is no longer nessecery. It's more appropriate to leave the variable q for other use...

Comments

mianwo’s picture

Category: feature » bug

Is it a bug report or a feature request? I'm not quite sure...

gurtner’s picture

shouldn't it be writing http://mysite.com?q=search for http://mysite.com/search, so in the case of parameters, shouldn't it also be http://mysite.com?q=search&parameters=something for http://mysite.com/search/parameters/something ? Maybe it's an issue with the mod-rewrite settings

callison’s picture

Status: Active » Closed (works as designed)

It is my understanding that Drupal always uses the 'q' GET variable first. I don't know if that can be overridden, but I think this is by design and I would recommend changing your variable before trying to change the way Drupal handles the URL.