首页 > 解决方案 > 使用 htaccess 在 url 中隐藏子文件夹

问题描述

我正在使用这个网址:

http://example.com/folder/form.php

每当有人使用此链接将显示的 URL 更改为

http://example.com/form.php

到目前为止,我已经做到了:

RewriteEngine On
RewriteRule ^$ folder/
RewriteRule ^(.*)$ folder/$1

但是,我不希望在有人使用时适用此规则

http://example.com/index.php

所以我需要让这个规则只有在 url 像

http://example.com/form.php

提前致谢!

标签: .htaccess

解决方案


如果您不希望/index.php文件重定向到/folder您可以将其排除在模式中或使用 RewriteCond

RewriteEngine On
RewriteRule ^$ folder/ [L]
RewriteRule ^((?!index.php).*)$ folder/$1 [L]

或者

RewriteEngine On
RewriteRule ^$ folder/ [L]
RewriteCond %{REQUEST_URI} !^/index.php [NC]
RewriteRule ^(.*)$ folder/$1

推荐阅读