Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php .htaccess将请求重定向到子文件夹并将其屏蔽_Php_.htaccess_Mod Rewrite_Redirect - Fatal编程技术网

Php .htaccess将请求重定向到子文件夹并将其屏蔽

Php .htaccess将请求重定向到子文件夹并将其屏蔽,php,.htaccess,mod-rewrite,redirect,Php,.htaccess,Mod Rewrite,Redirect,我有这个: www.website.com/subfolder1/ 实际网站(主网站)位于/subfolder1/ 我想将.htaccess文件放在根目录下,这样当有人转到: www.website.com/subfolder2/ 网站不会被转发到/subfolder1/,但它显示了/subfolder1/中的内容,并且看起来访问者位于/subfolder2/下 当点击链接时,会显示例如:www.website.com/subfolder1/link.php (文件'link.php'实际上

我有这个:

www.website.com/subfolder1/
实际网站(主网站)位于
/subfolder1/

我想将.htaccess文件放在根目录下,这样当有人转到:

www.website.com/subfolder2/
网站不会被转发到
/subfolder1/
,但它显示了
/subfolder1/
中的内容,并且看起来访问者位于
/subfolder2/
下 当点击链接时,会显示例如:
www.website.com/subfolder1/link.php

(文件'link.php'实际上位于/subfolder1下。)/

RewriteRule ^(.*?)/(.*) /subfolder1/$2 [NC,L]

…因此,我不必在创建子文件夹时一直重新创建主网站。

似乎最简单的方法就是将任何文件夹从根目录转发到/subfolder1/

RewriteRule ^(.*?)/(.*) /subfolder1/$2 [NC,L]
这应该起作用:

RewriteEngine On
RewriteCond %{REQUEST_URI} !^/subfolder1/
RewriteRule ^(.*)/(.*)$ /subfolder1/$2 [L]
上面的命令会自动将不在
子文件夹1
中的任何内容重定向到它。
例如,
http://example.com/subfolder2/about.php
将在
子文件夹2
中显示
关于.php
页面的内容,但仍显示
http://example.com/subfolder2/about.php
在url中。

它不起作用-我使用以下文件创建了一个.htacess文件:RewriteRule上的RewriteEngine^(.*?/(.*)/)/子文件夹1/$1[NC,L]有两种可能:要么使用$1(可能会得到404),要么将/subfolder/更改为subfolder/不太清楚您想要什么。能否显示当前的.htaccess?