![Apache 重写规则错误](https://linux22.com/image/1061634/Apache%20%E9%87%8D%E5%86%99%E8%A7%84%E5%88%99%E9%94%99%E8%AF%AF.png)
一些规则运行正常,并且所有内容都在 conf 文件中正确设置,以允许重写正常工作,但是一些规则失败,或者可能是 url 字符串未达到该规则并且已被重定向。
就像这条规则——
RewriteRule coach/(.*)$ coach.php?coach=$1
如果我调用 url-> localhost/coach/fitness
tt 会被重定向到localhost/coach.php
并且 php 文件中没有收到任何获取参数。
现在如果我把这个规则改成
RewriteRule coach/(.*)$ cp.php?coach=$1
并将文件名从教练.php在我的目录中cp.php然后它可以完美地针对给定的 url 运行并且接收参数。
因此问题是,如果具有 url 字符串名称的文件存在,它将仅重定向到该文件并且不应用任何重定向规则。
答案1
.htaccess
在文件顶部使用以下内容
# Options -Multiviews #