apache - Mod rewrite 将每个子目录重定向到同一个文件
问题描述
我有一个带有products.html
文件的网站。现在,在这个文件中,我将有一些 Javascript 代码检查 url 以显示正确的产品/类别。这是网址的一些示例:
example.com/products
example.com/products/
example.com/products/shoes
example.com/products/shoes/
example.com/products/shoes/adidas
example.com/products/shoes/adidas/
example.com/products/shoes/adidas/adidas-predator-20.3
example.com/products/shoes/adidas/adidas-predator-20.3/
所以基本上,我希望每次有人访问上述任何一个 url 时,我都想获取文件products.html
,剩下的我会用 JS 来管理。
我也希望能够在我的本地机器上测试它。在这种情况下,我的 URL 将是:
localhost/websites/myWebsite/products
localhost/websites/myWebsite/products/
localhost/websites/myWebsite/products/shoes
localhost/websites/myWebsite/products/shoes/
localhost/websites/myWebsite/products/shoes/adidas
localhost/websites/myWebsite/products/shoes/adidas/
localhost/websites/myWebsite/products/shoes/adidas/adidas-predator-20.3
localhost/websites/myWebsite/products/shoes/adidas/adidas-predator-20.3/
所以我认为我们需要两个 htaccess 文件,对吧?
解决方案
您可以使用同样适用于 localhost 和生产主机的单一规则:
RewriteEngine On
RewriteRule (?:^|/)products(?:/|$) products.html [L,NC]
推荐阅读
- javascript - 如何在 PHP 中选择单选按钮
- octave - 当我在 Octave 中使用“dynare”命令时,为什么“filename.m”会被删除?
- c - 尝试从 task_struct 读取进程的寄存器值
- html - 导航栏中的下拉按钮会扭曲导航栏
- python - json.load() 函数不起作用 - Python
- c++ - 为什么不调用模板化的复制构造函数?
- python - TypeError: Iterable command_prefix 或从 get_prefix 返回的列表必须只包含字符串,而不是 Cursor | 不和谐.py
- android - (Kotlin) 在 fragmentList 项上设置 OnclickListener
- matlab - 使用 arrayfun 或其他方式创建动态 matlab 函数
- c# - 如何在逻辑层访问 ClaimsIdentity