谁清楚phpcms和dedecms各个缺点和优点

谁清楚phpcms和dedecms各个缺点和优点,第1张

dedecms模板更换方法一将新模板覆盖templets下的文件最简单的更换模板的方法是直接覆盖templets目录下的所有文件,但是这样会导致原先的模板被覆盖。dedecms模板更换方法二通过后台管理,使DEDECMS去寻找模板目录还有一种就是更换整个网站的模板目录。系统管理 -- 站点设置 -- 默认模板风格 设置为目录名字比如下载了一个新的模板,新模板目录为newtemplet那么设置为 /newtemlet/default 这样基本模块的模板就会去该目录下寻找。dedecms模板更换方法三修改特定页面的模板还有就是修改单独网页的模板,那么就去频道管理 -- 网站栏目管理 -- 高级选项里选定模板地址充分利用 / 这样的上级目录跳转到模板的目录下。dedecms模板更换方法四修改源代码改变模板目录发现另一种方法,更为直接:修改include目录下的config_basephp下找到$cfg_templets_dir = $cfg_cmspath'/templets';只需要把这个修改为新的目录名字,然后HTML更新一下,所有的模板风格都改变了。这种方法不推荐,不过你要是为了防止模板被盗到可以还有个方法:把新模板直接上传到templets/default目录里,然后再点击栏目管理,在栏目高级参数那里选择新模板。

有4中常见问题,可以参考一下问题寻找对应答案:

第一种:

问题描述:本地测试正常,上传到空间后列表空白,重新安装都是空白,空间所有文件使用 777 权限都一样是空白。

解决方法:找到\data\module下的moduleurllisttxt,如果moduleurllisttxt里没内容就是被破坏了,从安装包里提出吧。

第二种:

问题描述:上传到空间后列表空白,重新安装都是空白,空间所有文件使用 777 权限都一样是空白,将moduleurllisttxt上传覆盖也是空白(服务器缓存是个问题,所以这种方法很实用)。

问题原因:DedeV57以后的版本出现管理列表无法显示的情况多一些,这是因为官方将后台模块的列表远程的放在了官方服务 器上了。虽然这样可以让织梦的用户获得更多官方的模块,但有时网站在某个时间段连接不上织梦官方服务器,就可能无法写入模块列表文件内容,造成模块列表空 白。总的来说,/data/module/moduleurllisttxt模块列表文件没有内容是织梦模块管理列表空白的直接原因。

解决方法:打开/dede/module_mainphp文件(其中dede为您的后台管理目录),注释掉大约91行和95行的如下代码:

$modules_remote = $dm->GetModuleUrlList($moduletype,$mdurl);

$modules = array_merge($modules,$modules_remote);

这样织梦程序就不会从远程去获取列表,而是从本地获取列表了。

第三种:

问题描述:整个织梦模块管理页面都是空白的。

问题原因:还有一种情况也会造成织梦管理模块管理后台的列表无法显示,就是禁用了 fsockopen()函数,这个函数是织梦用来获取远程模块管理列表的。

解决方法:可以用问题二的解决方法禁止织梦远程获取管理列表;

另外就是开启 fsockopen()函数,如果你的主机支持这么做的话。

第四种:

问题描述:下载源码下来后在本地安装后台模块可以正常显示,但是上传到空间之后模块显示不了了,这种情况一般是你的空间参数或者设置的问题,你可以咨询空间商,或者试图尝试一下这种方法。

解决方法:将include中的文件dedehttpdownclassphp进行相关的修改,具体就是 将$this->m_fp=@fsockopen($this->m_host,$this->m_port,$errno,$errstr,10);

替换为$this->m_fp=@stream_socket_client($this->m_host':'$this->m_port,$errno,$errstr,10);

注意事项:

造成空白的原因一:data/module/中的moduleurllisttxt文件被破坏,这时我们可以下载下来打开看一下,如果内容为空,就说明被破坏了,我们从源码中提取一个覆盖上去就行了;

造成空白的原因二:module_mainphp文件受损,我们从源码中提取出来上传覆盖即可,这里强调的是,做这些之前,一定要备份,防止出现意想不到情况,因为程序这个东西不稳定因素还是比较多的

造成空白的原因三:织梦DedeCMS后台模块管理列表不显示的原因还有其他的,比如织梦程序没有足够的权限,无法写入/data/module/moduleurllisttxt文件,也会造成列表空白的。

phpcms优点:

1模块化安装,非常适合安装,拆卸,和拿到市场上去交易非常方便的。

2灵活的标签语法,非常强大。

3缓存做的非常优秀。几乎支持目前主流的几大缓存系统解决方案,file缓存,eaelerator缓存,memcache缓存,shmop缓存等

4安全性也不错的。后台为了防范入侵,采用了cookie和session同时存在验证技术,才可以安全进入后台。

多次登录失败,开启验证码功能。防止机器人频繁猜口令。

5数据库。在根目录下的include目录下,db_aessphpdb_mssqlphpdb_mysqlphp等,就照着他的方法,在增加几个也没问题的。

6兼容性。是在php4的基础上开发的,所以向下兼容性是不错的。在include/globalfuncphp这个文件可以看到很多if(!function_exist()){},这些代码就是为了兼容php4相关函数。

phpcms缺点:

1后台对应的模块的功能列表url,从数据库中读取的,也即是,安装的时候,将url写入数据库了。这个如果二次开发要修改的话,不是很方便的,最好是写到文件中,读取文件内容,方便开发者开发,而且也更容易维护,如果是出于安全考虑的话,不妨加下密也可以的。

2分部式。后台的某些功能模块,还是要调用各个应用模块的admin部分,相关*.inc.php文件.如果我要把其中某个模块或应用独立出去部署到其他的服务器上,就不方便了。

3数据库设计问题,后台开设模型时,表的引擎只能是myIsam,而不能选择其他的,字段的类型,比如要开设一个字段为number,类型为int,但是在新增加的模型表中还是以varchar出现,而不是int,长度是默认的255modelfiled表,才发现该系统是将类型写到该表中了。

4加密/解密程序。目前已经在想相关安全网站已被爆以破解。这也不是什么新闻了。在开发中,关注下相关安全厂商发布的漏洞。

5数据库抽象层。就以上提到的几个数据库文件。db_mssqlphpdb_mysqlphpdb_aessphp等对于数据库分布式,应该没问题的。数据库抽象层处理数据比较快,且快平台更容易且更容易维护,这个是需要考虑的。

Dedecms功能实用,模板功能使用简单。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 谁清楚phpcms和dedecms各个缺点和优点

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情