在htaccess文件的url中使用虚拟目录

时间:2019-02-13 16:20:31

标签: php apache .htaccess

我们正在尝试在特定网址之后添加虚拟文件夹。当用户到达虚拟文件夹时,它应该显示索引页而不是404错误。

我们尝试在.htaccess文件中使用重写规则,但该规则继续显示404错误。

RewriteEngine On
RewriteRule ^p/(.*)$ index.php?/$1 [R=301,L]

在url地址栏中,当用户键入例如: https://ecitizen.in/p/002。 “ 002”是虚拟目录。它应加载https://ecitizen.in/p/index.php的索引页,而无需实际重定向或更改键入的实际URL。现在,当我们使用上述代码键入此URL:https://ecitizen.in/p/002时,它显示404 not found错误

1 个答案:

答案 0 :(得分:0)

答案取决于此 .htaccess 文件是在文档根目录还是在/p目录中-不管哪种方式,您都希望删除R=301标记(这就是将其转换为HTTP 301重定向的原因)。


如果.htaccess文件是文档根目录

您需要将/p目录映射到重写中。

RewriteRule ^p/(.*)/?$ /p/index.php?/$1 [L]


如果.htaccess文件位于/ p目录中

您需要从比赛中删除/p目录。

RewriteRule ^(.*)/?$ index.php?/$1 [L]