.htaccess 将htaccess掩码子文件夹作为根目录

2ekbmq32  于 2022-11-16  发布在  其他
关注(0)|答案(1)|浏览(132)

我有一个网站在我的域的根,我需要显示一切从根文件夹掩盖为子文件夹。
举个例子。
打开www.example.com时domain.com/test/,需要显示与domain.com相同的内容
打开www.example.com时domain.com/test/option1/,需要显示与www.example.com相同的内容domain.com/option1/
我尝试了多个htaccess选项,但我不能使它工作。
这可能吗?谢谢
更新
我将其添加到test文件夹内的.htacces文件中

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?domain.com$
RewriteRule ^/?(.*)$ test/$1 [L]
tpxzln5u

tpxzln5u1#

您的设置在两个方面存在错误:
1.分布式配置文件(.“htaccess”)的位置,则需要将其放在该http主机的DOCUMENT_ROOT文件夹中,而不是放在/test文件夹中。
1.您需要以相反的方式实现重写逻辑:
这应该可以实现您想要实现的目标:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$
RewriteRule ^/?test/(.*)$ /$1 [L]

一般来说,你应该更喜欢在实际的http服务器的主机配置中实现这些规则。如果你没有访问这些规则的权限(例如,如果你正在使用一个廉价的主机提供商),那么你确实可以使用一个 distributed 配置文件。实现这些规则是为了使它同样工作。
实际上是否需要您实现的条件取决于您的设置:如果你的服务器提供了多个http主机,那么如果主机有不同的逻辑,这可能是必需的。2否则你可以简单地删除它。

相关问题