今天刚用DEDECMS做好一个网站,作为新手真是被折腾的死去活来的,期间出现了大量问题,在这里记录下,一方面方便自己以后不犯同样的错误,一方面给大家看看
做好之后刚想上传就出现
php.ini register_globals must is Off
去百度了下找到解决方案:
错误提示:
dedecms安装中php.ini register_globals must is Off! 的解决方法
原因分析:
我们只要把php中的register_globals 改成on即可。
解决办法
在你的php.ini中找到register_globals = On修改成Off即可
代码如下:
register_globals = On
改成
register_globals = Off
如果没有服务器操作权限我们可修改include/common.inc.php的文件
删除下面代码即可
代码如下:
if ( ini_get(‘register_globals‘) )
{
exit(‘php.ini register_globals must is Off! ‘);
}
//禁止 session.auto_start
if ( ini_get(‘session.auto_start‘) != 0 )
{
exit(‘php.ini session.auto_start must is 0 ! ‘);
}
还要删除62行左右的
代码如下
if ( ini_get(‘register_globals‘) )
{
exit(‘php.ini register_globals must is Off! ‘);
}
终于解决了一个问题,,但是接下来第二个问题又来了
直接上图
第三个问题是:
数据库问题,数据库配置不对,估计是账号密码错了:
dede数据库配置文件所在路径为:/data/common.inc.php
修改方法:
把这个文件使用ftp下载下来,用记事本编辑.
下面是该dede数据库配置文件的内容:
根据自己的需要配置咯
配置好后以为OK了,,又出现这个。。。
Fatal error: Call to undefined function parcv() in \include\dedesql.class.php on line 489
解决的办法是:
打开 include/dedesql.class.php
找到:
if(isset($GLOBALS[‘arrs1‘]))
{
$v1 = $v2 = ‘‘;
for($i=0;isset($arrs1[$i]);$i++)
{
$v1 .= ParCv($arrs1[$i]);
}
for($i=0;isset($arrs2[$i]);$i++)
{
$v2 .= ParCv($arrs2[$i]);
}
$GLOBALS[$v1] .= $v2;
}
改成:
if(isset($GLOBALS[‘arrs1‘]))
{
$v1 = $v2 = ‘‘;
for($i=0;isset($arrs1[$i]);$i++)
{
$v1 .= chr($arrs1[$i]);
}
for($i=0;isset($arrs2[$i]);$i++)
{
$v2 .= chr($arrs2[$i]);
}
$GLOBALS[$v1] .= $v2;
}
最终以为好了,,点击网站又出现了:
bad request (invalid hostname)
以为是域名解析的问题,,想想服务器没这么容易出问题吧,,所以就把FTP服务器上的文件全部删了又重新上传了份新的dede上去,一切OK了,
最后一个问题是最坑的。。。。坑大了:
dede后台点击网站主页老是出现……(略)/include/***/templets/default/index.htm Not Found
一直找不到问题,甚至还以为是,不支持多站点,最终发现是FTP把数据库备份文件上传了,就是没把模板文件上传。。。。。。
关于这个可以百度搜索多站点配置