I wish to process all incoming demands via a single script (index.php in web-root).

So, this is what presently happens: http://localhost/foo/bar/baz

Is routed by Apache (through .htaccess) to: http://localhost/index.php?url=foo/bar/baz


This is effective, however, in Opera I can do that: http://localhost/foo\ -> spot the backslash.

And Apache, rather than doing: /index.php?url=foo\

Produces a normal error page saying:

Object not found! The asked for URL wasn't available on this server. Should you joined the URL by hand book your spelling and check out again.

If you feel this can be a server error, please contact the website owner.

Error 404 localhost Apache/2.2.14 (Win32) DAV/2 mod_ssl/2.2.14 OpenSSL/.9.8l mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2..4 Perl/v5.10.1

Directly likely to: http://localhost/index.php?url=foo\ works without issues, however.


All of the sites that I have seen on the web appear to have the ability to handle backslashes beautifully (e.g., http://stackoverflow.com/tags/php\\\\\).

I think about this behavior a bug and I wish to pressure Apache to forward backslashes properly. Here's my .htaccess file in the whole:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [L]

How do i get this to work correctly?


Edit: I simply attempted this on my small webhost which is handled correctly by them. Makes me think it's some establishing httpd.conf.

Most likely need AcceptPathInfo off not receiving individuals tolerated as forward slashes.