Jochem Maas wrote:
Richard Lynch wrote:

James Guarriman wrote:

RewriteEngine on
RewriteOptions MaxRedirects=15
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /$1.php
</Directory>
</VirtualHost>




...

I know its due to the way my Apache is setup (not rewrite rules)
but the following always works for me:

http://www.somedomain.com/doit

runs

http://www.somedomain.com/doit.php

--
apache just does its magic - I believe its to do with the DocumentIndex apache conf setting
(i.e. Apache makes use of the extensions found there) - please someone correct me if I'm wrong.



Your conditions are as follows: 1. reqeusted filename is not a directory: RewriteCond %{REQUEST_FILENAME} !-d

2. reqeusted filename is not a file:
        RewriteCond %{REQUEST_FILENAME} !-f

If all above matches, put ".php" at the end:
        RewriteRule ^(.*)$ /$1.php

So it has nothing to do with DocumentIndex. All that is necessary is to request a file that does not exist on the server even if you add ".php" at the end:

/foo - neither file or directory, rewrite to /foo.php
/foo.php - neither file or directory, rewrite to /foo.php.php
/foo.php.php - neither file or directory, rewrite to /foo.php.php.php
...etc.

The problem is ^(.*)$ matches everything. Try ^([^.]*)$ - no dot in url

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Reply via email to