Hi there!
I'm having problems setting up a mod_rewrite on Apache 2.2.3. I have
an address like this: http://127.0.0.1/~tomek/somesite/register.php
and it works ok. I've got a /home/tomek/public_html/somesite/.htaccess
file which contains:
RewriteEngine On
RewriteRule ^(.+)\.html$ $1.php [L]
The rule in this special example is simple (my target one is much more
complicated but that's not the problem): it should substiture html
with php and that's all. But when requesting this uri:
http://127.0.0.1/~tomek/somesite/register.html (HTML instead of PHP) I
get this 404 error: "The requested URL /home/tomek/public_html/
somesite/register.php was not found on this server."
So mod_rewrite successfully replaced html with php but Apache
converted this uri to the filesystem path, don't know why. By the way
the file do exists on the filesystem.

I've been searching a lot and one of the tips may be this from
http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html:
"Home directory expansion
When the substitution string begins with a string resembling "/
~user" (via explicit text or backreferences), mod_rewrite performs
home directory expansion independent of the presence or configuration
of mod_userdir.
This expansion does not occur when the PT flag is used on the
RewriteRule directive."

Unfortunately it does not work, but maybe it's not what my problem is.
Mine substitution string does not contain ~user, it actually is
"register.html".

Does anybody has any idea how to solve this problem? I have to be able
to use mod_rewrite with url containing ~user. What is this filesystem
conversion from?

And this is what RewriteLog says, it looks good to me:

teel127.0.0.1 - - [06/Oct/2007:23:05:43 +0200] [127.0.0.1/sid#819e6a8]
[rid#839b8c8/initial] (3) [perdir /home/tomek/public_html/somesite/]
strip per-dir prefix: /home/tomek/public_html/somesite/register.html
-> register.html
127.0.0.1 - - [06/Oct/2007:23:05:43 +0200] [127.0.0.1/sid#819e6a8]
[rid#839b8c8/initial] (3) [perdir /home/tomek/public_html/somesite/]
applying pattern '(.+)\.html$' to uri 'register.html'
127.0.0.1 - - [06/Oct/2007:23:05:43 +0200] [127.0.0.1/sid#819e6a8]
[rid#839b8c8/initial] (2) [perdir /home/tomek/public_html/somesite/]
rewrite 'register.html' -> 'register.php'
127.0.0.1 - - [06/Oct/2007:23:05:43 +0200] [127.0.0.1/sid#819e6a8]
[rid#839b8c8/initial] (3) [perdir /home/tomek/public_html/somesite/]
add per-dir prefix: register.php -> /home/tomek/public_html/somesite/
register.php
127.0.0.1 - - [06/Oct/2007:23:05:43 +0200] [127.0.0.1/sid#819e6a8]
[rid#839b8c8/initial] (1) [perdir /home/tomek/public_html/somesite/]
internal redirect with /home/tomek/public_html/somesite/register.php
[INTERNAL REDIRECT]

Best regards,
teel

---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: [EMAIL PROTECTED]
   "   from the digest: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to