繁体   English   中英

使用.htaccess文件隐藏和重命名文件夹

[英]hide and rename a folder using .htaccess file

假设我的网站上有一个链接,如下所示: www.example.com/test/index.php 我想对访问者隐藏“测试”文件夹,并使其显示为“苹果”,以便当用户键入www.example.com/applewww.example.com/apple/index.php ,它自动重定向到www.example.com/test/index.php 我想通过如下编辑.htaccess文件来使其成为可能:

RewriteEngine On
RewriteRule ^test/(.*) apple/$1

但是,它不起作用。 这里有什么问题吗? 如何重命名文件夹?

对于PHP文件:

例子1

RewriteRule ^/?api/([^/]+)?$ "request.php?rquest=$1" [L,QSA]

例子2

RewriteRule ^/?api/([^/]+)/([^/]+)?$ "request.php?rquest=$2&ns=$1" [L,QSA]

其中request.php是文件。 将被称为example.com/api/{ns}/{rquest}在后者和example.com/api/{rquest}在前。

如果要使用文件夹,请按照以下要求使用。 请测试一下,因为我还没有使用过。

RewriteEngine on
RewriteBase /
RewriteRule ^/?apple/([^/]+)?$ "test/index.php?categories=$1" [L,QSA]

这只是一个重写规则。 您定义一个模式,然后将其与要重写的模式进行匹配。 就那么简单。

您是否要忽略后面的斜线? 那就像

应该将example.com/help/legal/privacy/eula改写为example.com/help.php?path=/legal/privacy/eula ,然后您必须忽略URL模式中带help的路径中的/

您可以像下面这样简单地更改正则表达式:

RewriteRule ^/?help/(.+)?$ "help.php?topic=$1" [L,QSA]

因此,正则表达式使用(.+)表示,采取并采取一切措施,不要停止。

因此,这是URL语法:

RewriteRule {regex_of_url_pattern} "{rewrite_into_what}" [OPTIONS ...]


有关更多信息和示例,请参阅

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM