reactjs - .htaccess 如何使用参数重定向到index.html,但参数值与文件夹名称相同

标签 reactjs .htaccess mod-rewrite url-rewriting friendly-url

路由网址类似于“my_website/:param”

但是我的位置包含一个与参数相同的文件夹名称。 所以当我使用 http://my_website/apple 浏览时。 浏览器将显示该文件夹,而不是将值“apple”传递到网络。

我应该如何设置.htaccess?谢谢 以下仅当具有相同值的文件夹不存在时才有效。

<ifModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR]
  RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d

  RewriteRule ^.*$ - [NC,L]
  RewriteRule ^(.*) index.html [NC,L]
</ifModule>

最佳答案

根据您显示的示例,您可以尝试以下操作吗?在测试您的网址之前,请清除您的浏览器缓存。

RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/?$ index.html [L]

或者,如果您只想查找以 apple 开头的链接,请尝试以下操作。

RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^apple index.html [NC,L]

OP尝试代码中的问题: RewriteRule ^(.*) index.html [NC,L] 将创建一个循环,因为有没有提到任何条件,因此每个 uri 每次都为 true。

关于reactjs - .htaccess 如何使用参数重定向到index.html,但参数值与文件夹名称相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66197145/

相关文章:

javascript - 是否可以使用 for 循环生成 React props?

javascript - 为什么<Table/>多次渲染时不显示复选框?

javascript - useEffect 仅运行一次,刷新后不会再次获取

javascript - 是否可以禁用输入类型电子邮件验证的默认行为

带有 ssl 和反向代理的 WordPress (nginx)

wordpress - 我想通过 htaccess 或使用 WordPress 功能更改 WordPress 网站特定页面的 URL

linux - everything.com/xxx 使用 serveralias 重定向到 everything.com

.htaccess 强制在 Safari 中下载 PDF

php - 使用 mod_rewrite 的 .htaccess 新手问题

.htaccess - Mod重写file.php?串起来