httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rajkumar s <rajkumars...@gmail.com>
Subject Re: [users@httpd] Clarification on RewriteRule
Date Sun, 13 Mar 2005 20:10:05 GMT
Dear sir,

I had included the ProxyPass and ProxyPassReverse as given by you,

<VirtualHost 203.199.200.129>
ServerName www.whatsonchennai.com
ProxyPass / http://www.whatsonchennai.com:8080/
ProxyPassReverse / http://www.whatsonchennai.com:8080/
</VirtualHost>

But i got the error message as "403 Forbidden
You don't have permission to access / on this server.".

so i verified error_log and found these messages

[Mon Mar 14 01:31:56 2005] [warn] proxy: No protocol handler was valid
for the URL /. If you are using a DSO version of mod_proxy, make sure
the proxy submodules are included in the configuration using
LoadModule.
[Mon Mar 14 01:31:57 2005] [warn] proxy: No protocol handler was valid
for the URL /favicon.ico. If you are using a DSO version of mod_proxy,
make sure the proxy submodules are included in the configuration using
LoadModule.

But i had configured apache 2 with mod_proxy module as dynamic
loadable module and also had included this in httpd.conf.

LoadModule proxy_module   modules/mod_proxy.so

Do anything needs to be included other than this to rectify this error.
       
    I think i donot need ProxyPass for this task because all i have to
do is that when i enter the url www.whatsonchennai.com it should
display contents corresponding to "www.whatsonchennai.com:8080/ , but
it should show up only the url what i originally typed in ie
"www.whatsonchennai.com".

In the first mail i had given the contents for rewriting an url which
i found in one of our servers. You can find the explanation for the
RewriteRule from the url:
http://plone.org/documentation/tutorial/plone-apache/vhm

Sorry for troubling you

Sincerely,
S.Rajkumar


On Sun, 13 Mar 2005 14:00:36 -0500, Noah <sitz@onastick.net> wrote:
> On Sun, Mar 13, 2005 at 02:14:46PM +0530, Rajkumar s wrote:
> > Dear sir,
> >        I had set the RewriteLogLevel to '9' , But the previous rule
> > haven't worked ,so i modified the rule as
> >
> > <VirtualHost 203.199.200.129>
> > #DocumentRoot /home/domains/whatsonchennai.com/Webdir
> > ServerName www.whatsonchennai.com
> > RewriteEngine on
> > RewriteLog "/var/log/apache/rewrite.log"
> > RewriteLogLevel 9
> > RewriteRule ^/(.*) http://www.whatsonchennai.com:8080/
> > </VirtualHost>
> >
> > On applying this rule the thing is getting redirected , ie when i
> > enter the url "www.whatsonchennai.com" it's getting redirected
> > to "www.whatsonchennai.com:8080". But again i find that the url in
> > browsers address bar appears as "www.whatsonchennai.com:8080" but it
> > should instead show up only "www.whatsonchennai.com".
> >
> > Rewrite logs are provided below:
> 
> [snip]
> 
> (note: someone check me on this; I /think/ I have it right, but my
> Proxy-fu isn't as strong as I'd like)
> 
> The RewriteLogs you have provided are for a violently different
> configuration than you posted in your first email. In *this* posting,
> you're issuing a 302 redirect to http://www.whatsonchennai.com:8080/
> (note that lack of a [P,L] in your RewriteRule; the 'P' is required for
> Proxying; RTFM at http://httpd.apache.org/docs/mod/mod_rewrite.html#RewriteRule).
> If the goal is to keep the ':8080'-style URLs from being seen by the end user,
> a Proxy-style setup will be required. Note also that the above example
> could be written as:
> 
> <VirtualHost 203.199.200.129>
>         #DocumentRoot /home/domains/whatsonchennai.com/Webdir
>         ServerName www.whatsonchennai.com
>         ProxyPass / http://www.whatsonchennai.com:8080/
>         ProxyPassReverse / http://www.whatsonchennai.com:8080/
> </VirtualHost>
> 
> No mod_rewrite needed. =)
> 
> In your first posting, you had:
> 
> > <VirtualHost 203.199.69.181>
> > ServerName rosaonline.org
> > RewriteEngine On
> > RewriteLog "/usr/local/apache/logs/rewrite.log"
> > RewriteLogLevel 0
> > ProxyPass  rotaryindia.net  http://203.199.69.181:8080/
> > RewriteRule ^/(.*) http://127.0.0.1:8080/VirtualHostBase/http/rosaonline.org:80/ROSA/VirtualHostRoot/$1
[P,L]
> > </VirtualHost>
> 
> This does two things:
> 
> 1) Any request like this:
>     GET rotaryindia.net HTTP/1.0
>     Host: rosaonline.org
> 
> ...would get proxyed to http://203.199.69.181:8080/. The user would see
> whatever they had typed into their browser, Apache would make an
> outbound HTTP request to http://203.199.69.181:8080/, and return the
> contents of that request. Note that anything in the request path after
> 'rotaryindia.net' would get mapped to the target URL, so:
> 
>     GET rotaryindia.net/foo/bar/baz.html HTTP/1.0
>     Host: rosaonline.org
> 
> ...would result in Apache fetching the content from
> http://203.199.69.181:8080/foo/bar/baz.html.
> 
> 2) The RewriteRule portion doesn't do anything all that fancy; it simply
> Rewrites any request to an outbound request to 127.0.0.1:8080, so that a
> request which looks like this:
> 
> GET /foo/bar/baz.html HTTP/1.0
> Host: rosaonline.org
> 
> ...becomes a Proxy request to
> http://127.0.0.1:8080/VirtualHostBase/http/rosaonline.org:80/ROSA/VirtualHostRoot/foo/bar/baz.html
> 
> --n
>

---------------------------------------------------------------------
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