使用.htaccess以根目录动态加载subdomains文件夹

本特利

我正在尝试使用实现,.htaccess所以我可以使用一个虚拟主机设置和在hosts文件中定义的一个URL的配置访问所有项目。这将允许我将项目拖放到文件夹中,并且无需我进行任何其他配置即可工作,并节省了很多工作时间。

示例A:prestige.projects.dev托管在D:/projects/prestigeetc

示例B:newproject.projects.dev托管在D:/projects/newprojectetc

下面的代码适用于示例A的特定情况,但是我无法弄清楚如何使其在所有项目中“动态”运行。我的目标是制作prestige通配符。例如:newproject.projects.dev应该自动加载的内容D:/projects/newproject

RewriteEngine On
RewriteCond %{HTTP_HOST} ^prestige\.projects\.dev$
RewriteCond %{REQUEST_URI} !^/prestige/
RewriteRule (.*) /prestige/$1

只要实现目标,我就可以接受除此方法之外的其他建议。

怀特先生

请尝试以下类似的方法:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^([a-z]+)\.projects\.dev [NC]
RewriteCond "%{REQUEST_URI} /%1" !^(/[^/]+)[^\s]*\s\1$
RewriteRule (.*) /%1/$1 [L]

%1是对最后匹配的CondPattern中捕获的组的反向引用

第二个RewriteCond指令是您的硬编码检查的“通配符”版本,以确保该名称REQUEST_URI尚未从与子域匹配的目录开始-从而防止了重写循环。

字符串%{REQUEST_URI} /%1/<directory>/<anything> /<subdomain>第一次重写后将扩展为形式为“ 的字符串)与regex匹配^(/[^/]+)[^\s]*\s\1$,后者检查是否与regex/<directory>相同/<subdomain\1是对regex中捕获组的内部反向引用)。仅当这不匹配时,RewriteRule 替换才会发生-与您当前规则的工作方式相同。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

根目录中使用.htaccess的动态子文件夹的重写规则

使用htaccess从文档根目录重定向到文件夹

如何忽略子文件夹并使用.htaccess重定向到根目录

如何使用 htaccess 使子文件夹无法访问并且文件无法从根目录下载?

使用.htaccess从URL删除目录文件夹

如何使用bitbake将文件夹或文件添加到配方的根目录中?

在动态文件夹中使用.htaccess-Wordpress

如何使用Powershell从文件夹的根目录中仅删除子文件夹和子文件夹的内容,而不删除单个文件

如何使用Google File Stream的根目录而不是“我的云端硬盘”子文件夹?

无法使用 Microsoft.Graph REST API 在根目录下创建新的 OneDrive 文件夹

Chrome 在使用 Quasar 构建的公共 pwa 文件夹的根目录中找不到 manifest.json 文件

通过使用htaccess打开文件夹目录来打开check.php

如何返回不带子文件夹/子目录的URL(使用PHP而不是htaccess)

如何使用htaccess的图像文件夹显示假目录

使用htaccess删除文件夹名称

使用Htaccess删除文件夹名称

使用htaccess删除子文件夹

无法使用.htaccess重写文件夹

使用.htaccess php从子文件夹索引页面加载默认页面

使用htaccess重写时无法加载CSS,图像和供应商文件夹

使用.htaccess将文件夹加载到特定的Wordpress URL(类别URL)上

使用光标加载器在目录中获取特定的文件夹图像

使用资产目录时,是否可以从特定文件夹加载图像?

使用imacro创建动态文件夹

使用 informatica 动态循环文件夹

htaccess从文件夹根目录返回json

Apache .htaccess将子文件夹用作根目录

如何使用电子将动态安装的Vue插件加载到plugins文件夹中

使用.htaccess动态重定向到子文件夹,在不使用域名的情况下将子文件夹隐藏在url中