James Guarriman wrote:

Hi

I've just installed Apache 2.0.52, with:

./configure --prefix=/usr/local/httpd --enable-so
--enable-modules=all

My httpd.conf includes:
-----------------------------------
<VirtualHost mydomain>
ServerAdmin [EMAIL PROTECTED]
DocumentRoot "/home/mydomain"
ServerName mydomain
ErrorLog logs/mydomain-error_log
CustomLog logs/mydomain-access_log common
DirectoryIndex index.php index.html index.html.var
<Directory "/home/mydomain">
php_flag allow_url_fopen 1
php_flag magic_quotes_gpc 0
RewriteEngine on
RewriteOptions MaxRedirects=15
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /$1.php
</Directory>
</VirtualHost>
---------------------------------
(I try to make Apache serve 'foo' as 'foo.php')

But when accessing 'http://mydomain/foo', I get no
webpage,
but this error log:
----------------------------------
[Mon Jan 24 10:47:59 2005] [debug]
mod_rewrite.c(1778): [client
192.168.2.101] mod_rewrite's internal redirect status:
10/15.
[Mon Jan 24 10:47:59 2005] [error] [client
192.168.2.101] Request
exceeded the limit of 10 internal redirects due to
probable
configuration error. Use 'LimitInternalRecursion' to
increase the limit
if necessary. Use 'LogLevel debug' to get a backtrace.
[Mon Jan 24 10:47:59 2005] [debug] core.c(2748):
[client 192.168.2.101]
r->uri =
/favicon.ico.php.php.php.php.php.php.php.php.php.php
[Mon Jan 24 10:47:59 2005] [debug] core.c(2754):
[client 192.168.2.101]
redirected from r->uri =
/favicon.ico.php.php.php.php.php.php.php.php.php
[Mon Jan 24 10:47:59 2005] [debug] core.c(2754):
[client 192.168.2.101]
redirected from r->uri =
/favicon.ico.php.php.php.php.php.php.php.php
[Mon Jan 24 10:47:59 2005] [debug] core.c(2754):
[client 192.168.2.101]
redirected from r->uri =
/favicon.ico.php.php.php.php.php.php.php
--------------------------------

If I remove the line 'RewriteOptions MaxRedirects=15',
I get
a very similar error:
----------------------------
[Wed Jan 24 10:31:29 2005] [debug]
mod_rewrite.c(1778): [client 192.168.2.101]
mod_rewrite's internal redirect status: 10/10.
[Wed Jan 24 10:31:29 2005] [error] [client
192.168.2.101] mod_rewrite: maximum number of internal
redirects reached. Assuming configuration error. Use
'RewriteOptions MaxRedirects' to increase the limit if
neccessary.
[Wed Jan 24 10:31:29 2005] [debug]
mod_rewrite.c(1778): [client 192.168.2.101]
mod_rewrite's internal redirect status: 0/10.
-------------------------------

What am I doing wrong? Thank you very much.


What you are doing wrong is trying to use mod_rewrite, the nightmare extension from hell!
Seriously though, it is your rewrite rule that is wrong, you have defined a recursion in there for any filename that do not already end '.php' or have no .


RewriteRule ^(.*)$ /$1.php => add '.php' to the end of any filename that has a 
'.' in it somewhere (remember that you are in unix world, so the . does not 
signify a file extension in the same way as a domestos environment, it is just 
part of the filename).
eg1) blah => blah (no change as it doesn't match the regex)
eg2) favicon.ico => favicon.ico.php
when the rule next runs, it finds that favicon.ico.php does not match the 
exception of .php (the .ico gives the first match), so adds .php again, and 
again, and again, and again.....

Tom


__________________________________ Do you Yahoo!? Yahoo! Mail - 250MB free storage. Do more. Manage less. http://info.mail.yahoo.com/mail_250





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



Reply via email to