Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.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
Apache 如何将HTACCESS更改重定向到现在允许的子目录URL?_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Apache 如何将HTACCESS更改重定向到现在允许的子目录URL?

Apache 如何将HTACCESS更改重定向到现在允许的子目录URL?,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,我成功地更改了我的.htaccess文件以更改网站文件的url,并删除了access文件夹。 网站地图 旧URL:mywebsite.com/access/dashboard.php 新URL:mywebsite.com/dashboard.php 这一切都很完美,唯一的问题是,我仍然可以从旧的url访问我的文件。我想将该url重定向到新的url,以便不再使用它。我该怎么做 这是我当前的.htaccess文件: RewriteEngine on RewriteBase / RewriteCon

我成功地更改了我的
.htaccess
文件以更改网站文件的url,并删除了
access
文件夹。
网站地图

旧URL:
mywebsite.com/access/dashboard.php

新URL:
mywebsite.com/dashboard.php

这一切都很完美,唯一的问题是,我仍然可以从旧的url访问我的文件。我想将该url重定向到新的url,以便不再使用它。我该怎么做
这是我当前的
.htaccess
文件:

RewriteEngine on
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/access/$1.php -f
RewriteRule ^(.+?)/?$ access/$1.php [L,NC]

RewriteBase/
行下方插入此规则:

RewriteCond%{THE_REQUEST}\s/+access/(\s*)[NC]
重写规则^/%1[R=301,L,NE]

这将匹配原始Apache请求中的
/access/
,并重定向到不带
/access

的URL。我是保留我的旧规则还是用建议的规则覆盖它们?你应该保留你的重写规则,这就是我提到插入此规则的原因。明白了,哇,工作得很好。我知道这不是进行此操作的确切地点,但我有几件事要处理我的htaccess查询字符串文件。你愿意帮忙吗?我可以补偿你的时间。我宁愿得到专业的帮助,然后试着在接下来的12小时内解决这个问题。事实上,我不是一个专业的网站管理员。我这样做只是出于爱好。我建议你创建一个新问题并将所有问题发布在一个帖子中,我和这里的许多其他专家将尽力帮助你。请先将所有问题发布在一个新问题中,相信我,你会得到最好的帮助。为了补偿时间,我谦恭地请求你为你喜欢的慈善事业捐款。
RewriteEngine on
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/access/$1.php -f
RewriteRule ^(.+?)/?$ access/$1.php [L,NC]