Question

Apache2 redirect domain to internal page

I have two domains pointing to a site hosted by apache2 (a.com and b.com for example). The primary domain is a.com and the website can be accessed from this domain.

However, the page a.com/test/ should redirect to b.com (not b.com/test/) to display the content from the server (as it normally would for a.com/test/) and this content should also be displayed if b.com is accessed directly.

I thought that reverse proxies might be the way to go but haven’t had any luck, I was wondering if this is possible to do within my .htaccess file (both domains are pointing to the server).

Show comments

Submit an answer

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Sign In or Sign Up to Answer

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Want to learn more? Join the DigitalOcean Community!

Join our DigitalOcean community of over a million developers for free! Get help and share knowledge in Q&A, subscribe to topics of interest, and get courses and tools that will help you grow as a developer and scale your project or business.

Hi, you should be able to do this through a proxy RewriteRule. When you said you’d tried that and it didn’t work, did you mean the site appeared broken or that you couldn’t get the RewriteRule to work? If the issue was that the site appeared broken, keep in mind that “b.com” in your example needs to send back HTML to the browser that is completely valid, including all URLs being valid with how it references them. If the HTML sent back when you access “b.com” uses URLs starting with “/” that use paths that only exist on “a.com”, that will result in broken URLs.

The proxy approach works great (I’ve used it before) but it does exactly what you tell it and browsers will continue to work exactly as they do. The browser doesn’t know there’s any relationship between “a.com” and “b.com”, so if the HTML on “b.com” has paths like “/img/foo.png” that actually only exist on “a.com”, you’ll get 404’s.—Of course, you may be able to solve that with more RewriteConds/RewriteRules (e.g. check if any requested file exists, if not, proxy through to a.com).