Re: RewriteRule trouble

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/22/07, Krist van Besien <krist.vanbesien@xxxxxxxxx> wrote:
> On 10/22/07, BP Jonsson <bpjonsson@xxxxxxxxx> wrote:
> > How should I write a rewrite rule so that it appears to
> > visitors that they are at http://foo(.*) but the files
> > reside at http://bar/site/foo? Supposing that the rewrite
> > rule is in a .htaccess under the foo root directory, what
> > should it look like?
>
> ReWriteRule    http://foo.com/     http://bar.com/site/foo   [P]

No. The first argument to RewriteRule is a url-path, not an absolute URL.

The original question wasn't completely specified, since we don't know
if foo and bar reside on the same machine or not. If they do, you can
use a simple virtual host in httpd.conf:
NameVirtualHost *:80
<VirtualHost *:80>
ServerName bar
DocumentRoot /path/to/bar
</VirtualHost>
<VirtualHost *:80>
ServerName foo
DocumentRoot /path/to/bar/site/foo
</VirtualHost>

If they don't reside on the same machine, you do indeed need to proxy,
and mod_rewrite is probably the right tool. You'll need a

RewriteCond %{HTTP_HOST} ^foo$ [NC]
RewriteRule (.*) http://bar/site/foo/$1 [P]

You may also need a ProxyPassReverse directive.

Joshua.

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


[Index of Archives]     [Open SSH Users]     [Linux ACPI]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Squid]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux