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