magento|centos环境下访问后台自动补全index.php导致无法访问

最近很奇怪的遇到一个问题,就在开启了后台url_write和nginx配置忽略index.php之后,在访问网站后台的时候,依旧出现自动补全index.php的问题,这样就导致后台无法打开访问。经研究发现是在centos系统下才会出现此种情况,在Ubuntu环境中则不会。代码明明都是一样的,这是典型的环境不同导致的偶发性异常。最后没办法的办法是对系统内置的Model进行重写,具体是:

app\code\core\Mage\Core\Model\Store.php中的640行_updatePathUseRewrites()方法:

protected function _updatePathUseRewrites($url)
{
if (!$this->getConfig(self::XML_PATH_USE_REWRITES) || !Mage::isInstalled()) {
$indexFileName = $this->_isCustomEntryPoint() ? 'index.php' : basename($_SERVER['SCRIPT_FILENAME']);
$url .= $indexFileName . '/';
}
return $url;
}
切记不可直接改动系统core里面的model文件,可以使用重写机制,复制该文件到app\code\local\Mage\Core\Model\Store.php,然后单独修改该方法即可。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值