如何在xampp中运行两个本地Web开发项目

时间:2017-03-15 12:48:20

标签: html web xampp localhost virtualhost

我正在开发两个不同的Web开发项目,比如A和B.我将所有项目A文件放在C:\ xampp \ htdocs \ A中,同样地将所有项目B文件放在C:\ xampp \ htdocs \中B.有时我需要处理项目而不切换工作空间。我能够一次看到localhost:8080上运行的网站。如何在不切换工作空间的情况下同时运行两个网站?我想在浏览器中访问网站A.localhostB.localhost

我做了一些研究,发现在XAMPP中有一个名为Virtual Hosts的概念。但是无法正确实现,我也通过本教程尝试了相同但浏览器显示dns_unresolved_hostname问题。有人可以提供在XAMPP中实现此设置的确切步骤。

这是我的项目结构:

C:\ xampp \ htdocs \ A - ProjectA的index.html,style.css等

C:\ xampp \ htdocs \ B - ProjectB的index.html,style.css等

2 个答案:

答案 0 :(得分:1)

    # Setup Listening Port
NameVirtualHost *:8080

# Ensure "localhost" is preserved
<VirtualHost *:8080>
    ServerName a.localhost
    DocumentRoot "C:\xampp\htdocs"
</VirtualHost>

# Setup "a.localhost" Virtual Host
<VirtualHost *:8080>
    ServerName b.localhost
    DocumentRoot "C:\xampp\htdocs\B"

    <Directory "C:\xampp\htdocs\B">
        Options Indexes FollowSymLinks Includes
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>
# Setup "a.localhost" Virtual Host
<VirtualHost *:8080>
    ServerName a.localhost
    DocumentRoot "C:\xampp\htdocs\A"

    <Directory "C:\xampp\htdocs\A">
        Options Indexes FollowSymLinks Includes
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

并打开C:\windows\system32\drivers\etc\hosts 在末尾添加这些行

127.0.0.1  a.localhost
127.0.0.1  b.localhost

答案 1 :(得分:0)

对于Windows

步骤:1
使用任何文本编辑器(不需要管理权限)

打开此文件C:\xampp\apache\conf\extra\httpd-vhosts.conf
<VirtualHost *:80>
   DocumentRoot "C:\xampp\htdocs\project1\public"
   ServerName project1.test
</VirtualHost>

<VirtualHost *:80>
   DocumentRoot "C:\xampp\htdocs\project2\public"
   ServerName project2.test
</VirtualHost>

步骤:2
使用任何文本编辑器(需要管理权限)

打开此文件C:\Windows\System32\drivers\etc\hosts
127.0.0.1 project1.test
127.0.0.1 project2.test

现在重新启动Xampp