Php htaccess重写以在每个文件夹中包含文件

Php htaccess重写以在每个文件夹中包含文件,php,.htaccess,mod-rewrite,url-rewriting,rewrite,Php,.htaccess,Mod Rewrite,Url Rewriting,Rewrite,有没有一种方法可以让我使用htaccess的url重写功能让它看起来像是在/public/some/文件夹中有一个文件,而实际上它在/public中 例如,我在根文件夹中有index.php,我希望当我访问index.php时,它也可以像在所有文件夹和子文件夹中一样 当我执行index.php时,它也将在所有文件夹和子文件夹中执行 更新 请通过下面的例子理解我的问题 php在根目录中,我在根目录中也有不同的文件夹 因此,当我通过浏览器访问index.php时,它也会在其他文件夹中执行 http:

有没有一种方法可以让我使用htaccess的url重写功能让它看起来像是在
/public/some/文件夹中有一个文件,而实际上它在
/public

例如,我在根文件夹中有index.php,我希望当我访问index.php时,它也可以像在所有文件夹和子文件夹中一样

当我执行index.php时,它也将在所有文件夹和子文件夹中执行

更新

请通过下面的例子理解我的问题

php在根目录中,我在根目录中也有不同的文件夹 因此,当我通过浏览器访问index.php时,它也会在其他文件夹中执行

http://example.com/index.php
也会表现得好像它也在子文件夹中一样

http://example.com/folder1/index.php

http://example.com/folder2/index.php

http://example.com/folder3/index.php

index.php
不在这些文件夹中,但它必须同时在这些文件夹中执行


我认为通过这个例子不难理解。请相应地回答

我不确定我是否理解正确。但无论如何,您都可以在.htaccess中尝试类似的内容

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?page=$1 [L,QSA]
因此,完成后,所有内容都将转到index.php,并带有$_GET[page]参数。因此,例如www.mydomen.com/try/to/get/this将转到我们的index.php,在那里我们将有我们的$_get[page]=“try/to/get/this”。如果要对该字符串使用explode,则可以为url编写任何规则。类似于您自己的URL管理器:)

例如:

将index.php和.htaccess放在根文件夹中 在index.php中:

$urlArray = explode("/",$_GET['page']);
switch($urlArray[0]){
  case "try":
     include($_SERVER[DOCUMENT_ROOT]."/path/to/folder/what/you/need/my.php");
     break;
  case "another_url":
     include($_SERVER[DOCUMENT_ROOT]."/another/path/to/folder/what/you/need/my_another.php");
     break;
}

希望它是您所需要的。

您的意思是像index.php?page=category&subcat=tet更改为example.com/category/test?@Soundz不更改,但index.php应该表现得好像它也在其他文件夹中一样,而无需手动将index.php上载到每个文件夹中。我只希望index.php位于主文件夹中,并希望在其他文件夹中执行它同时,也就是说,你想阻止对包含图像/文件的文件夹进行索引吗?显然这是XY问题-这不是我所需要的。我通过一个示例更新了我的问题。请阅读并相应地回答。我不确定这是否是你所需要的方式。你能描述一下你的问题吗?你想要实现什么?