如何在 xampp 中运行两个本地 Web 开发项目
Posted
技术标签:
【中文标题】如何在 xampp 中运行两个本地 Web 开发项目【英文标题】:How to run two local web development projects in xampp 【发布时间】:2017-08-06 05:17:22 【问题描述】:我正在开发两个不同的 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 等
【问题讨论】:
您是否修改了您的hosts
文件? example
【参考方案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
【讨论】:
【参考方案2】: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
【讨论】:
以上是关于如何在 xampp 中运行两个本地 Web 开发项目的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 xampp 在本地运行多个 laravel 应用程序并使它们可供我本地网络上的其他 PC 访问