You are viewing a plain text version of this content. The canonical link for it is here.
Posted to docs@httpd.apache.org by Bob Ionescu <bo...@googlemail.com> on 2009/11/03 15:36:32 UTC
Re: svn commit: r832217 - in /httpd/httpd/trunk/docs/manual/rewrite:
index.html.en index.xml index.xml.tr remapping.html.en remapping.xml
rewrite_guide.html.en rewrite_guide.xml
2009/11/3 <rb...@apache.org>:
> Author: rbowen
> Date: Tue Nov 3 00:16:57 2009
> New Revision: 832217
>
> URL: http://svn.apache.org/viewvc?rev=832217&view=rev
> Log:
> Moves another rule out of rewrite_guide, and updates it for modern
> versions of mod_rewrite
>
> Modified:
> httpd/httpd/trunk/docs/manual/rewrite/index.html.en
> httpd/httpd/trunk/docs/manual/rewrite/index.xml
> httpd/httpd/trunk/docs/manual/rewrite/index.xml.tr
> httpd/httpd/trunk/docs/manual/rewrite/remapping.html.en
> httpd/httpd/trunk/docs/manual/rewrite/remapping.xml
> httpd/httpd/trunk/docs/manual/rewrite/rewrite_guide.html.en
> httpd/httpd/trunk/docs/manual/rewrite/rewrite_guide.xml
[...
]> +<div class="example"><pre>
> +# backward compatibility ruleset for
> +# rewriting document.html to document.php
> +# when and only when document.php exists
> +RewriteEngine on
> +
> +RewriteCond $1.php -f
> +RewriteCond $1.html !-f
> +RewriteRule ^(.*).html$ $1.php
I think this will lead to problems since $1 should contain (in per-dir
context) only local/foo and not /full/physical/path/to/local/foo as
required by apr_stat().
Bob
---------------------------------------------------------------------
To unsubscribe, e-mail: docs-unsubscribe@httpd.apache.org
For additional commands, e-mail: docs-help@httpd.apache.org
Re: svn commit: r832217 - in /httpd/httpd/trunk/docs/manual/rewrite: index.html.en index.xml index.xml.tr remapping.html.en remapping.xml rewrite_guide.html.en rewrite_guide.xml
Posted by Rich Bowen <rb...@rcbowen.com>.
On Nov 3, 2009, at 06:36 , Bob Ionescu wrote:
>>
>> +# backward compatibility ruleset for
>> +# rewriting document.html to document.php
>> +# when and only when document.php exists
>> +RewriteEngine on
>> +
>> +RewriteCond $1.php -f
>> +RewriteCond $1.html !-f
>> +RewriteRule ^(.*).html$ $1.php
>
> I think this will lead to problems since $1 should contain (in per-dir
> context) only local/foo and not /full/physical/path/to/local/foo as
> required by apr_stat().
Ah. We need a RewriteBase on there. Thanks.
--
Rich Bowen
rbowen@rcbowen.com
---------------------------------------------------------------------
To unsubscribe, e-mail: docs-unsubscribe@httpd.apache.org
For additional commands, e-mail: docs-help@httpd.apache.org
Re: svn commit: r832217 - in /httpd/httpd/trunk/docs/manual/rewrite:
index.html.en index.xml index.xml.tr remapping.html.en remapping.xml
rewrite_guide.html.en rewrite_guide.xml
Posted by Eric Covener <co...@gmail.com>.
On Wed, Nov 4, 2009 at 1:19 PM, Rich Bowen <rb...@rcbowen.com> wrote:
> Will this fix it? :
>
>
> @@ -177,11 +177,14 @@
> # backward compatibility ruleset for
> # rewriting document.html to document.php
> # when and only when document.php exists
> +<Directory /var/www/htdocs>
> RewriteEngine on
> +RewriteBase /var/www/htdocs
>
> RewriteCond $1.php -f
> RewriteCond $1.html !-f
> -RewriteRule ^(.*).html$ $1.php
> +RewriteRule ^(.*).html$ $1.php
> +</Directory>
> </pre></example>
> </dd>
RewriteBase is the URL-path, not the filesystem path. And I don't
think test strings in a condition are expanded with respect to the
base.
You can figure out where the first pass landed by using
%{REQUEST_FILENAME} in per-dir context:
Alias /a /tmp/a
<directory /tmp/a>
RewriteBase /a
RewriteEngine on
# full path in per-directory contet
RewriteCond %{REQUEST_FILENAME} (.*)\.html$
RewriteCond %1.php -f
RewriteRule (.*)\.html$ $1.php
</directory>
--
Eric Covener
covener@gmail.com
---------------------------------------------------------------------
To unsubscribe, e-mail: docs-unsubscribe@httpd.apache.org
For additional commands, e-mail: docs-help@httpd.apache.org
Re: svn commit: r832217 - in /httpd/httpd/trunk/docs/manual/rewrite: index.html.en index.xml index.xml.tr remapping.html.en remapping.xml rewrite_guide.html.en rewrite_guide.xml
Posted by Rich Bowen <rb...@rcbowen.com>.
Will this fix it? :
@@ -177,11 +177,14 @@
# backward compatibility ruleset for
# rewriting document.html to document.php
# when and only when document.php exists
+<Directory /var/www/htdocs>
RewriteEngine on
+RewriteBase /var/www/htdocs
RewriteCond $1.php -f
RewriteCond $1.html !-f
-RewriteRule ^(.*).html$ $1.php
+RewriteRule ^(.*).html$ $1.php
+</Directory>
</pre></example>
</dd>
On Nov 3, 2009, at 06:36 , Bob Ionescu wrote:
> 2009/11/3 <rb...@apache.org>:
>> Author: rbowen
>> Date: Tue Nov 3 00:16:57 2009
>> New Revision: 832217
>>
>> URL: http://svn.apache.org/viewvc?rev=832217&view=rev
>> Log:
>> Moves another rule out of rewrite_guide, and updates it for modern
>> versions of mod_rewrite
>>
>> Modified:
>> httpd/httpd/trunk/docs/manual/rewrite/index.html.en
>> httpd/httpd/trunk/docs/manual/rewrite/index.xml
>> httpd/httpd/trunk/docs/manual/rewrite/index.xml.tr
>> httpd/httpd/trunk/docs/manual/rewrite/remapping.html.en
>> httpd/httpd/trunk/docs/manual/rewrite/remapping.xml
>> httpd/httpd/trunk/docs/manual/rewrite/rewrite_guide.html.en
>> httpd/httpd/trunk/docs/manual/rewrite/rewrite_guide.xml
> [...
> ]> +<div class="example"><pre>
>> +# backward compatibility ruleset for
>> +# rewriting document.html to document.php
>> +# when and only when document.php exists
>> +RewriteEngine on
>> +
>> +RewriteCond $1.php -f
>> +RewriteCond $1.html !-f
>> +RewriteRule ^(.*).html$ $1.php
>
> I think this will lead to problems since $1 should contain (in per-dir
> context) only local/foo and not /full/physical/path/to/local/foo as
> required by apr_stat().
>
> Bob
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: docs-unsubscribe@httpd.apache.org
> For additional commands, e-mail: docs-help@httpd.apache.org
>
--
Rich Bowen
rbowen@rcbowen.com
---------------------------------------------------------------------
To unsubscribe, e-mail: docs-unsubscribe@httpd.apache.org
For additional commands, e-mail: docs-help@httpd.apache.org