我有一个用Codeigniter 2.1.4编写的应用程序,它可以在我安装WAMP的本地机器上运行。
将项目移动到生产服务器上时,Codeigniter路由停止工作。登录表单操作控制器方法,但我被路由到网站的主页。如果我手动尝试输入Web应用程序的任何部分,即使我有重定向逻辑没有登录到应用程序,也会发生同样的情况。
我的生产服务器已安装IIS6和IsapiRewrite4。
我已经尝试将所有重写规则从CodeIgniter附带的.htaccess文件复制到IIRF.INI文件中,但我无法让它工作。
这些是默认的.htaccess规则:
RewriteEngine on
RewriteCond $1 !^(index\.php|public|\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?$1
我已经读过你可以将它粘贴到IIRF.INI文件中它应该可以工作,但没有运气。
另外,我不确定在哪里放置IIRF.INI文件,我猜测在另一个.htaccess所在的CodeIgniter根目录。
我还注意到还有其他.htaccess文件,一个在 / core 文件夹中,一个在 / application 文件夹中,另一个在 /中application / cache 文件夹。
更改/添加IIRF.INI文件时,是否需要在生产服务器上重新启动IIS?
我也尝试过这里建议的规则但没有运气:Configure htaccess to work with IIRF on IIS6 - codeigniter
任何人都可以帮忙吗?也许它甚至不是重写问题,我不确定...如果您需要任何其他信息,请告诉我。
答案 0 :(得分:2)
Isapi Rewrite是Helicon Tech的产品。 Helicon产品使用稍微不同的配置文件到使用IIRF.ini文件的Ionic IIRF isapi重写模块。我想你的产品已经混淆了。
请参阅http://www.helicontech.com/isapi_rewrite/
上的Helicon文档另外,Ionic ISAPI重写模块可在https://iirf.codeplex.com/
获得