Clone online site apache

Sometimes, it is useful to replicate online site in a local machine for development purposes. In this article , we will see how to configure apache to serve clones of online sites.

Creating sites.conf

In this step we will create sites.conf. The sites.conf contains the config options for all the sites you want develop in your local machine.

First, we should find [apache], and decide what will be the location be the [sites] location

[apache] is the location where the apache server is installed. for example : C:/Program Files/apache

[sites] is the location where sites.conf, the content and the logs of your sites are located. for example : C:/sites

Now, follow those steps:

1 Open [apache]/conf/httpd.conf config file and add following line in its end:

 Include "[sites]/sites.conf"

2 Create the newly included file [sites]/sites.conf

Adding a site

In this step we will add new site.

First, you should know [site-domain] and generate a unique [site-name]

[site-domain] is the domain where the site is located.
for example : ,

[site-name] is a unique name which identify the site. A simple strategy to generate this name:

  • For use name.
    For example for use demo
  • For use name_subdomain.
    For example for use demo_s1

Now , follow those steps:

1 Create a new [sites]/[site-name] directory, and create the following sub directories inside:

  • www - this directory will contians the actual content of the site the should be served by apache.
  • log - this directory will contians the logs related the site

2 Add the following config snippet to [sites]/sites.conf

     ServerName   [site-domain]
     ErrorLog     "[sites]/[site-name]/log/error.log"
     DocumentRoot "[sites]/[site-name]/www"

     <Directory "[sites]/[site-name]/www">
         Options Indexes FollowSymLinks Includes ExecCGI
         AllowOverride All
         Require all granted

3 Add a new mappings of IP addresses to [site-domain] in hosts file. This file is usually located in C:WindowsSystem32driversetc

hosts               [site-domain]

4 Start/Restart apache

In the next part, we will see an example how to Clone online site