我已经创建了一个工作 magento 站点现在我正在尝试基于现有工作站点创建一个测试环境。它位于同一台服务器上,并将位于不同的子域下。
workingSubDomain.domain.com/store/ newSubDomain.domain.com/store/
我保持子存储目录结构与工作站点相同。
我已经将所有文件夹设置为 755,并将 app/etc/、media、var 设置为 777
在安装向导配置页面上单击继续后,我收到 500 错误。
服务器日志文件显示以下内容:
PHP Fatal error: Call to a member function insert() on a non-object in /var/www/vhosts/domain.com/magentoFolder/subStore/app/code/core/Mage/Core/Model/Resource/Resource.php on line 133, referer: http://newSubDomain.domain.com/subStore/index.php/install/wizard/config/?config%5Blocale%5D=en_US&config%5Btimezone%5D=America%2FChicago&config%5Bcurrency%5D=USD
我在 .htaccess 文件夹中尝试了以下 url 重写:
RewriteEngine On
RewriteBase /clint/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /clint/index.php [L]
和
RewriteBase /magentoFolder/subStore
和
RewriteBase /magentoFolder/subStore/
和
RewriteBase /magentoFolder/
和
RewriteBase /subStore/
我也清除了 var 文件夹。
任何建议将不胜感激。
这是 resource.php 文件中第 133 行的代码:
* Set module version into DB
*
* @param string $resName
* @param string $version
* @return int
*/
public function setDbVersion($resName, $version)
{
$dbModuleInfo = array(
'code' => $resName,
'version' => $version,
);
if ($this->getDbVersion($resName)) {
self::$_versions[$resName] = $version;
return $this->_getWriteAdapter()->update($this->getMainTable(),
$dbModuleInfo,
array('code = ?' => $resName));
} else {
self::$_versions[$resName] = $version;
return $this->_getWriteAdapter()->insert($this->getMainTable(), $dbModuleInfo);
}
}