【发布时间】:2013-02-25 14:34:04
【问题描述】:
我正在尝试在我的本地开发机器上设置一些自动化。通常我的所有项目都是这样开始的
打开 Hosts 文件,设置一个 DNS 条目,如 127.0.0.1 example.com www.example.com
打开httpd-vhosts.conf 文件并添加一个条目,如下所示
<VirtualHost *>
DocumentRoot "/path/to/xampp/htdocs/example.com"
ServerName example.com
ServerAlias www.example.com
</VirtualHost>
我想要实现的是以这样一种方式设置环境,我不应该在每次我想在新主机上工作时都在我的httpd-vhosts.conf 中添加这个条目。
我希望在httpd-vhosts.conf 中有一个全局条目,它可以处理所有域并将它们映射到各自的目录
所以如果我的hosts 文件中有这样的记录列表
127.0.0.1 example.com
127.0.0.1 mysite.com
127.0.0.1 google.com
127.0.0.1 abc.com
还有这样的文件夹结构
/htdocs/
/example.com/
/mysite.com/
/google.com/
/abc.com/
它应该自动映射到这些目录,而无需在httpd-vhosts.conf 文件中添加VirtualHost 记录。
我猜想这可以通过在httpd-vhosts.conf 中添加通配符条目(我不知道如何)然后在.htaccess 文件中添加一些重定向规则来放置/htdocs/ 以将它们映射到它们的目录.
所以最终,
- 如何在
httpd-vhosts.conf中设置通配符条目 - 如何在
/htdocs/中的.htaccess文件中设置精确的重写规则@
这是我想到的,也许还有更好的方法。
【问题讨论】:
-
要使任何解决方案都能正常工作,您必须将域停放/添加到您的服务器。因此,在添加域时,请多花 5 秒时间将其直接指向所需的目录。我必须强调:反正你要把它停在它所属的地方。
标签: apache .htaccess xampp vhosts