如何使用 htaccess 的重写规则从 url 中删除多个子目录?

问题描述 投票:0回答:1

我怎样才能重写这个网址

localhost/store/admin/employee/position/cashier.php?name=John
localhost/store/John
无需移动文件

我什至不知道这是否可能?请我需要帮助。如果可能的话,.htaccess 应该位于哪里?应该在商店目录中吗?

php .htaccess mod-rewrite url-rewriting
1个回答
0
投票

当然可以按照您的建议重写此类请求。然而,我怀疑这就是你稍后会解决的问题。因为从商店到收银员的联系是令人惊讶的......

但是,为了给您一个起点,除了您可以在网上轻松找到的所有可用教程之外,这可能会有所帮助:

RewriteEngine on
RewriteRule ^/?store/(\w+)$  /store/admin/employee/position/cashier.php?name=$1 [L]

您可以在http服务器的虚拟主机配置中实现这样的规则。如果您计划将解决方案部署到您无法控制的服务(即廉价的托管提供商),那么您可以使用分布式配置文件(通常称为“.htaccess”)。这样的文件应位于 http 主机配置中定义为 DOCUMENT_ROOT 的文件夹中(通常类似于 /var/www/default 或类似内容,请检查您的配置),以便

http://localhost
当前指向的文件夹。该文件必须可读http 服务器进程。
    

© www.soinside.com 2019 - 2024. All rights reserved.