我试图实现,使用.htaccess
,所以我可以访问所有我的项目与一个虚拟主机设置,并在主机文件中定义一个URL的配置。这将允许我在该文件夹中放置一个项目,它将起作用而不需要我做任何其他配置,并在工作时节省大量时间。动态加载子域文件夹作为根用.htaccess
实施例A:prestige.projects.dev
托管在D:/projects/prestige
等
实施例B:newproject.projects.dev
托管在D:/projects/newproject
等
下面的代码适用于实施例A的具体情况,但我不了解如何使所有项目“动态”工作。我的目标是使prestige
成为通配符。例如:newproject.projects.dev
应该自动加载D:/projects/newproject
的内容。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^prestige\.projects\.dev$
RewriteCond %{REQUEST_URI} !^/prestige/
RewriteRule (.*) /prestige/$1
只要达到目标,我愿意接受其他建议而不是此方法。
如果'%{DOCUMENT_ROOT} /%1'是一个目录,那么可以添加一个检查。 –
我已经更新了我的答案。现在这更接近地模仿你对'REQUEST_URI'的检查,从而避免直接请求重写子域/目录(这不需要“REDIRECT_STATUS”检查)。这仍然允许直接访问该目录 - 尽管如果该环境仅用于开发(如果需要,可以实现_外部重定向),这应该不成问题。 – MrWhite
我还没有实现Olaf建议的目录检查,因为我认为这会比404更糟糕,而不是默默无闻。除非访问文档根(子域)时的默认响应是404响应? – MrWhite