Apache Vhost HowTo Serve Same Content using a different domain and IP -

Apache Vhost HowTo Serve Same Content using a different domain and IP

There are a few ways of doing this and all basically involve using the reverse proxy or "ProxyPass" feature of Apache to accomplish it.

1.) Create a normal vhost and simply symlink the root directory of the site you want to mirror.

Eg. originalsite.com and newsite.com

/vhosts/originalsite.com/httpdocs

You would symlink like this:

ln -s /vhosts/originalsite.com/httpdocs vhosts/originalsite.com/

2.) A flexible way and the best way if you want the mirror/different site to have a different IP address but still serve the same content.


This would be in your vhost.conf

ServerName differentdomain.com
ServerAlias www.differentdomain.com
ProxyPass / http://yourmainsite.com/
ProxyPassReverse / http://yourmainsite.com/

Alternative Way If You Want To Proxy The Same Domain through a different IP (eg. for SEO geolocation purposes you could host all content on a single server and then put proxies in front of it)


ServerName maindomani.com
ServerAlias www.maindomain.com
ProxyPass / http://ip.ip.ip.ip/
ProxyPassReverse / http://ip.ip.ip.ip/
ProxyPreserveHost On


*Make sure you keep the "/" at the end of yourmainsite.com or it will not work properly.
The above is a preferable for me because it will keep working even if the backend server config or IP changes.

Caveats Issues To Take Into Account

When doing this with live, public sites that are indexed in search engines you could get penalized or just plain confuse people so there are issues to handle.

First of all if you force all requests to go to a certain domain or on SSL, you will have to consider how to handle it by updating your .htaccess

Also if you don't want to get penalized for duplicate content, you will need to add some code to your site to determine if it is being accessed by the main host name, if not then you should dynamically insert a nofollow and noindex into your <head> section.

<meta name="robots" content="noindex, nofollow" />

 


  • ffmpeg how to watermark and concatenate in one command
  • /usr/bin/ld: cannot find -lboost_system-mt-s /usr/bin/ld: cannot find -lboost_filesystem-mt-s /usr/bin/ld: cannot find -lboost_program_options-mt-s /usr/bin/ld: cannot find -lboost_thread-mt-s collect2: error: ld returned 1 exit status make: *** [cag
  • Wine uninstalled broken on Linux Mint
  • ffmpeg trouble concatenating similar but different files
  • ffmpeg Unable to Use Hardware Encoding with Nvidia 3.40 Driver and GT210 card
  • Linux Mint USB Kernel Tainted and Locked Port/Dev File
  • ffmpeg Linux Mint download, compile and install howto
  • OpenVZ error : Container start failed (try to check kernel messages, e.g. "dmesg | tail") Locked by: pid 166638, cmdline vzctl start 888171
  • How to extract view contents of initramfs image gzip'd
  • Linux how to copy GPT partition table with dd
  • Centos 7 How To Change Hostname
  • Debian/Mint/Ubuntu Font Packs/Recommended To Install
  • Migrate Centos 7 from Single HDD to mdadm RAID 10 array:
  • How to change reserved blocks in Linux partition
  • Reading package lists... Done W: GPG error: http://ppa.launchpad.net trusty InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY D46F45428842CE5E
  • Centos 7 A start job is running for dev-mapper-clx2droot.device (8min 44s / no limit)
  • USB 3.0 External HDD Enclosure Seagate UAS problems - [sdd] tag#1 CDB: Write(16) 8a 00 00 00 00 01 70 04 08 68 00 00 00 08 00 00
  • Centos 7 Cudaminer Nvidia setup guide
  • USB 3.0 PCI x1 Card Review VIA VL805 on Linux Review and Experience
  • rsync run as root sudo without password