为什么相同的 .htaccess 命令在本地主机和服务器中的工作方式不同?

Why same .htaccess commands working differently in localhost and server?

我有以下 .htaccess 命令用于重定向 php 页面

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

此代码在 localhost.It 中有效,在 Web 服务器中无效。但是当代码稍作修改时,它可以在服务器中工作。

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

为什么会这样?

发生这种情况的原因是您可能有不同的 PHP 版本 运行。我相信这一段时间以来一直被认为是 PHP 错误,但请不要引用我的话。您可能在本地主机上 运行 是 PHP 的早期版本(可能是 5.2.X),而在您的网络服务器上是更新版本。这不是 .htaccess 问题。是 PHP。您只需要根据版本知道使用哪一个即可。

这个答案也作为参考