httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From André Warnier ...@ice-sa.com>
Subject Re: [users@httpd] rewrite help
Date Tue, 04 Nov 2008 07:53:00 GMT
Also, maybe be aware that (.*) will match anything, even the empty 
string, so you may end up with "/wc?uni=" (unless as solprovider 
indicates, you have a different rule for "/").
It may be better to use "^/(.+)$", which will only match if there is 
actually something after the /.

solprovider@apache.org wrote:
> Do not escape the question mark.
> 
> RewriteRule ^/(.*) /wc?uni=$1 [L]
> - the first character must be a slash and is not included in the $1 variable.
> - Add "/wc?uni=" before the rest of the URL on the same server.
> - Discard any querystring from the visitor.  (No QSA flag.)
> - [L] = stop processing RewriteRules.
> 
> You may want another RewriteRule for /,
> 
> HTH,
> solprovider
> 
> On 11/3/08, apache@neondawn.net <apache@neondawn.net> wrote:
>> I am trying to get a redirect to work so that I can get friendl URLs for
>>  my website. I am using mod_perl and have written a little handler as a
>>  controler to handle all requests.
>>
>>  What I currently have that works as follows.
>>
>>  RewriteEngine On
>>  RewriteBase /
>>  RewriteCond %{REQUEST_FILENAME} !-f [OR]
>>  RewriteCond %{REQUEST_FILENAME} !-d
>>  RewriteRule ^wc/(.*) /wc\?uni=$1 [L]
>>
>>  The user types in:  http://example.com/wc/docName
>>  and apache rewrites: http://example.com/wc?arg=docName
>>
>>  Where /wc is my perl handler, as such:
>>
>>  PerlModule Examplepackage::WC
>>  <Location /wc>
>>         SetHandler perl-script
>>         PerlResponseHandler Examplepackage::WC
>>  </Location>
>>
>>  This works and it's great, but I want to work just a little different.
>>
>>  I want the user to type in: http://example.com/docName
>>  and apache rewrite: http://example.com/wc?arg=docName
>>
>>  I have tried a few different RewriteRule types and either they 404 or
>>  it exceedes 10 internal redirects (internal server error).
>>
>>  I have tried:
>>  RewriteRule ^/(.*) /wc\?uni=$1 [L]
>>  RewriteRule ^(.*) /wc\?uni=$1 [L]
>>  RewriteRule /(.*) /wc\?uni=$1 [L]
>>  RewriteRule . /wc\?uni=$1 [L]
>>  RewriteRule /(.*)$ /wc\?uni=$1 [L]
>>  and other such permutations.
>>
>>  What am I doing wrong?
> 
> ---------------------------------------------------------------------
> 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: users-unsubscribe@httpd.apache.org
>    "   from the digest: users-digest-unsubscribe@httpd.apache.org
> For additional commands, e-mail: users-help@httpd.apache.org
> 


---------------------------------------------------------------------
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: users-unsubscribe@httpd.apache.org
   "   from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Mime
View raw message