how to create subdomains in apache(xampp) server?

Try this :

NameVirtualHost 127.0.0.1:80
<VirtualHost *:80>
<Directory "C:\path\to\ecommerce">
    Options FollowSymLinks Indexes
    AllowOverride All
    Order deny,allow
    allow from All
</Directory>
ServerName ecomm.localhost
ServerAlias www.ecomm.localhost
DocumentRoot "C:\path\to\ecommerce"
</VirtualHost>

Yes you edited your hosts file correctly.


In addition to atabak's answer:

Go to Apache > Conf > Extra -> "httpd-vhosts.conf" file and add:

<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs/subdomain"
ServerName subdomain.localhost.com
</VirtualHost>

Go to C:\WINDOWS\system32\drivers\etc -> "hosts" file and add:

127.0.0.1 subdomain.localhost

from Setting Up Multiple Subdomains Using Xampp /


In xampp\apache\conf\extra\httpd-vhosts.conf file add these line at the bottom of the file for subdomain support :

<VirtualHost *:80>
   DocumentRoot "C:/xampp/htdocs/sandbox"
   ServerName sandbox.localhost.com
</VirtualHost> 

Then in C:\windows\System32\drivers\etc\hosts file add these line at the bottom of the file :

127.0.0.1    sandbox.localhost.com

After that re-start the xampp server and open a new tab, write in the address bar

sandbox.localhost.com

Then you will see the output of index.php file which was in the sandbox folder