从不起作用的url中删除index.php

从不起作用的url中删除index.php,php,.htaccess,codeigniter,url-rewriting,codeigniter-url,Php,.htaccess,Codeigniter,Url Rewriting,Codeigniter Url,这是我的.htaccess文件: RewriteEngine On RewriteBase /mydomainname.com/ RewriteCond $1 !^(index\.php|images|assets|robots\.txt) RewriteRule ^(.*)$ /index.php/$1 [L] 此代码在一个主机上工作,而在另一个主机上不工作。 我尝试在两个主机上运行此代码 1) 在一个主机上,我的代码不需要在url中添加index

这是我的.htaccess文件:

     RewriteEngine On

     RewriteBase /mydomainname.com/
     RewriteCond $1 !^(index\.php|images|assets|robots\.txt) 
     RewriteRule ^(.*)$ /index.php/$1 [L]
此代码在一个主机上工作,而在另一个主机上不工作。 我尝试在两个主机上运行此代码

1) 在一个主机上,我的代码不需要在url中添加index.php i、 e

2) 在另一个域中,我需要在url中添加index.php 比如:

有什么问题吗


提前谢谢

删除基线,这可能是旧基线所必需的,但不是新基线。这是不标准的,不应该要求这样做。可能他们有一些疯狂的虚拟主机设置


它也可能是您的新主机,不允许.htaccess文件,因此它被忽略

AllowOverride All | None |指令类型[指令类型]

确保allow override指令在其不工作的第二个主机中启用
.htaccess
文件


只需检查第二台主机上的mod_重写工作即可。请求主机支持。
有一种情况是,主机不支持重写。

两个主机上的代码相同?正如前面有人回答的,您必须删除RewriteBase/mydomainname.com/或将“mydomainname.com”重命名为您的新域名。您必须确保mod_rewrite已启用,如果未启用,请联系您的托管服务查看我的答案。这很可能是您的问题的原因。是的,它没有启用,但我正在使用共享主机,知道如何在共享主机上启用它吗?是的,但实际错误是什么。找出实际的错误,而不是猜测。你肯定不是通过试错来完成所有的开发吗?
 www.mydomainname.com/contrlerName/functionname
 www.mydomainname.com/index.php/contrlerName/functionname