标签: 〖ECMS〗


帝国ECMS:不小心把自己的IP禁止了怎么办?

问题描述:因为屏蔽恶意 IP,或者是设置只有允许的 IP 才能登录后台时不小心,致使自己无法访问网站或不能登录后台。

解决办法:通过FTP修改文件 ecms\e\class\config.php 。

1. 如果是不能访问自己的网站,问题一般出在设置屏蔽 IP 时,在最后一个 IP 后多了一个空行,这会导致所有 IP 均不能登陆(一般不会糊涂到把自己 IP 加入禁止访问吧?)

处理办法是在 config.php  中找到 ‘closeip’=>” ,从 IP 列表中删除空行(如果这个禁止访问列表里真有自己的 IP,当然是删去了)。

2. 如果是不能登录后台,一般是在设置允许登录后台的 IP 时考虑不周,没有将多个上网地点的 IP 都加入其中;或者是加入之后该机子的 IP 地址变化了。

解决办法是在 config.php  中找到 ‘hopenip’=>” ,将自己的 IP 加入到其中。或者全部删除不作限制,登录后台后重新设置。

发表评论

猪跑之路:重拾 Drupal

其实早在2006年就尝试过 Drupal ,结果是知难而退,在用过宏博CMS、帝国CMS和现在这个博客用的WPMU之后,还是决定重启猪跑之路,尽管它门槛较高,但超强的可定制性太有吸引力。

既然提到了以上几个CMS,顺便说下我的感受。

宏博CMS最易上手,功能也不错,适合没有奇思怪想,只想尽快建起自己的网站,并且网站内容和功能没有特别要求的站长;我觉得最适合办垃圾站(哈哈)。宏博商家服务一般,感觉想急于赚钱,对免费客户招待不是太周全。

帝国CMS个人认为是国内最好的开源CMS,易用性和可定制性平衡的不错,功能强大,如果你本身懂技术,它还可以更强大,安全性也不错。不足是不太重视网站与客户的互动功能,用户管理方面相对薄弱,适合懂得一点代码,想让自己的网站看起来比较像样、不至雷同的站长,内容方面不太适合需要与用户互动较多的网站,很不满ECMS官方和它的粉丝总强调说帝国可以无限地二次开发,话不是这样说的,真有这种水平的人就自己写系统去了。虽如此说,目前我的语文芳草地也还是用的帝国,估计一时半会,也不会有更好的CMS能替代它。

WordPress 偏向于博客风格,喜欢它的结构紧凑合理,代码简洁优美,作个人博客之用绝对是不二选择。全世界有众多的WP追随者,使得它的第三方主题(粗浅地说就是皮肤)和插件众多,也能及时得到象桌面发布系统WLW、饭否等第三方商家的功能支持,但反过来说,针对它的恶意滋扰者也众多,垃圾评论和邮件是个让人头疼的问题。另一个问题是它的谨慎,例如编辑器不提供视频插入功能等等,与国内的只要用户高兴就敢给装的作风不同。

用WP不是不能建网站,所有真正开源的系统理论上说都无所不能,只是费的改造力气不如自己去写一个系统了。目前本站5d0d.net(我的领地)就是用的WP的多博客版本(与多用户是有区别滴),即WPMU。

我为什么还要再去弄Drupal呢?因为我的新想法需要一个更SNS的风格(什么是SNS?)需要有网站的内容管理和论坛的用户互动和信息的交融聚合功能。其实康盛的CenterHome也是个选择,但是试用下来,一是它不开源,不开源可订制性就差,可能它有10000种功能,而我只需要其中10种,也必须全部安装运行其余9990种,而我最想要的一种功能,却恰恰是它目前没有的,十分尴尬;二是国内的这类系统不知为什么,系统代码都那么混乱臃肿,让我一个半瓶水都看着不爽,感觉是开发之初他们就没有个很好的构思,系统是堆砌起来的,这样的系统对于二次开发就很不利,况且即使已经开源的系统,似乎自己也没把开源真当回事,一句话,国内开源系统是已经长大成人后才被迫接受开源改造的,基本架构就不具有开源的优势。

几天弄下来,发现猪跑之路还真是不易。虽然每一处都有令人惊喜的灵活性,比如系统菜单项的定制,一般CMS就是固定指向栏目,即使是WP也是在标签和分类之间选择(自己写代码就另论了),而Drupal则可以指向任何东西,甚至是运行一段PHP代码,而我的新念头恰恰就需要这样的灵活性。但是代价也是巨大的,单单理解它的整套运作原理和一堆与众不同的概念就要了亲命了。但既已如此决定,这次就决心一路走到黑了,特开此贴以自励。

发表评论

帝国ECMS5.1版标题截取函数SUB()的一个BUG

BUG的表象:我在改版语文芳草地网站时发现IE6下布局混乱,经反复观察,发现凡用中文标点的文章标题截取数就不对,会比规定的长出两个字符,造成页面变形。经过一天两夜,终于被我找到问题所在,原来是WC一个小小的BUG,但是给我布局带来巨大不爽!标题明明可截10个字的地方就只敢放8个,否则一出现带标点的标题就会撑破页面。。。废话少说,BUG在哪里?各位看客——

e/class/connect.php 第 311 行 ,sub() 函数内:



        } elseif(224 <= $t && $t < 239) {

239的前面少了个小小的等于号!!!正确的应是:

         } elseif(224 <= $t && $t <= 239) {

原理分析:中文标点如“?”、“!”等,UTF-8编码的头字节是239,而判断语句
elseif(224 <= $t && $t < 239) {  $tn = 3; $n += 3; $noc += 2; }
的意思是:首字节编码在 大于等于 224 小于(漏掉了等于的情况) 239 时累加2字节截取长度……

所以才造成只要有中文标点,就会比规定的截取数长两个字符的情况。

说明:此BUG只影响UTF-8系统,且只在标题里用到诸如 “?”、“ !”等全角中文标点时出状况,且只有我这样对布局一丝不苟、一个字的短长也计较的人才受影响……另外,在用了溢出处理的CSS后,IE6以外的浏览器也不受影响。

Comments (1)

404错误处理与404页面自定义

404页面需从用户与搜索引擎两方面进行友好处理:

1.当用户进入一个已不存在的页面时很可能就马上离开,使用一个404页面既能友好地提示用户不能访问的原因还可以挽留住访客;

2.当搜索引擎来抓取页面时你必须要返回一个404页面不存在的状态码告诉搜索机器该页面不存在,否则对SEO有些影响。推荐阅读《404错误的处理方式及其对SEO的影响

所以,最重要的是先要页面返回状态码为404,然后再跳转到一个提前设计好的404页面。

ASP里设置返回404状态码方法:

1.首先IIS设置的方法一般没有权限,而在服务商的虚拟主机管理中可以自定义设置404页面。看我的虚拟主机管理面板:clip_image001

                                                         [图:虚拟主机中404错误页面设置]

需要注意的是,404错误页设置一般都在虚拟主机管理中的“高级选项”中。然后设置一个404错误页的文件名,后缀为.asp,而前面的文件名则可以自定义了。而后缀为的.html是返回不了404状态码的,故在不能设置IIS的情况下,页面返回404必须是.asp为后缀的文件。

2.假设我们在虚拟主机里定义404错误页为err404.asp文件,那么下面则需要在err404.asp文件设置如下必须的代码:

<%

   Response.Status = "404 Not Found"

%>

代码放置在页面顶部,这样就可以让不存在页面返回404状态码了。我们可以使用FF的Firebug(常用的Js调试工具)工具进行查看页面是否真的返回了404,当然还有诸如httpwatch等工具。

clip_image002

   [图:firebug下查看页面返回状态]

Firebug使用时需要将网络中起用调试该站点的调试。

另外,网上有些介绍在代码里加了response.end 如下:

<%

   Response.Status = "404 Not Found"

   Response.end   

%>

如果加了Response.end则后面的内容全都不加载,也就看不到我们定义好的404页的外观跟其他内容了。

3. 状态码已经正确地返回404了,接下来需要做一个对用户体验良好的404页面的外观。网上有很多参考,可以Google一下“404 创意”http://www.google.cn/search?hl=zh-CN&q=404+%E5%88%9B%E6%84%8F&btnG=Google+%E6%90%9C%E7%B4%A2&meta=&aq=7&oq=404+

4. 你可能还想在用户看到404页面后,再让页面自动跳转到首页或是其他特定页。分享两种经过测试的方法。

4.1 利用meta标签的refresh进行跳转

<meta http-equiv="refresh" content="3;url=http://www.yahoo.com/?xxx">

说明:content属性里第一个分号(;)前的数值3为跳转等待的时间3秒,数值越大等待越久。分号后为你需要跳转的url地址。据Google中文博客管理员介绍,Yahoo就使用的此方法进行跳转。

4.2 使用js进行跳转

<script style="text/javascript">

  setTimeout("testTime()",2500); 

  function testTime() {

    location = "http://www.sem80.com/";

  }

</script>

说明:跳转等待时间修改数值2500,数值越大等待时间越长。

5.其他环境下返回404状态码的方法:

5.1 IIS/ASP.net下设置404错误页面

首先,修改应用程序根目录的设置,打开 “web.config” 文件编辑,在其中加入如下内容:

<configuration>

<system.web>

<customErrors mode="On" defaultRedirect="error.asp">

<error statusCode="404" redirect="notfound.asp" />

</customErrors>

</system.web>

</configuration>

说明:未亲测,推荐阅读 《.net下返回404错误页面并跳转的解决办法

5.2PHP时在Apache里设置404错误页面

为Apache Server设置 404错误页面的方法很简单,只需在.htaccess 文件中加入如下内容即可:

ErrorDocument 404 /notfound.php

说明: 未亲测。

发表评论

重新本地安装ECMS时怎样删除Apache

今天遇到一个问题,本地重装帝国CMS系统,按照说明一键卸载旧版本失败,手动删除d:\EmpireServer目录没有权限,在Windows任务管理器中停止Apache服务无法完成操作,网上搜了下都是说Unix下Apache卸载的,我的是Windows Vista…

后经试验,在控制面板-管理工具-系统配置-服务中可以把Apache 2 服务取消,需要重启机子,重启后整个ECMS的安装目录即可删除了。

image

不料安装新版又出状况,按了一键安装,提示:

image

Apache2已经安装…看来我只是停用了它,删除文件和目录也不意味着卸载了,再回到上文提到的系统配置-服务,果然Apache2服务又出现,且是没有勾选状态。打上勾,再次重启机子,再一键安装,终于进入到http://localhost/

并不想纠缠于Apache,只想尽快入手干活,上述方法是瞎试,我承认。

发表评论

帝国ECMS如何采集图文教程(药莲教你)

莲(phamlily)原文说明:
-------------------
把官方提供的教程切割了一下,把需要注意的几点加了点详细图文说明,比较适合像我这样的新手上手。
希望能帮到像我这样,刚刚开始不知怎么采集,在那里蒙头猛摸了半天才看到一点光明的朋友^^
补充一点(刚刚和某网站搏斗完的心得)
如果被采集网站(特别是广告和正文正则比较容易出现的情况)的代码里有空格,在写正则时要把空格一起入进去,不然是不认的。上面的图片里我把空格统统漏掉了-_-|||
-------------------

clip_image002

clip_image004

clip_image006

clip_image008

clip_image010

clip_image012

clip_image014

clip_image016

clip_image018

clip_image020

clip_image022

clip_image024

 

附:视频教程

发表评论

帝国CMS如何进行远程发布?

需要事先了解以下信息方可进行远程发布:

主机地址;例如:61.129.78.46。请勿以此地址进行尝试,它不会生效。
端口;FTP服务器的端口,一般情况下是21。
登录名;您在该处申请ftp空间时注册的用户名。
登录密码;您在该处申请ftp空间时填写的ftp密码。
发布路径;发布目标的完整路径,从登录后的默认路径直至您希望存放blog页面文件的目标文件夹名称。例如:/wwwroot/blog/,一定要以“/”结尾。目标文件夹应当是已经存在的,如果不存在,请您在进行远程发布之前,通过ftp软件登录您的ftp空间,创建该路径。
浏览地址;发布后的浏览网址,包括您访问该ftp空间中文件时所使用的域名及路径。例如:http://www.domain.com/blog/,一定要以“/”结尾。
填写以上信息,完成后提交。

首次设置完成时,您需要发布重建您的blog,方可在您的站点上看到您的blog。这一操作将会在您的ftp空间的指定路径下创建一系列文件夹,并将您在服务器上的所有静态页面复制到上述文件夹中。这一过程持续时间较长,请勿自行中止。结束时页面会跳转至全部blog列表的页面。

此时您将可以通过类似http://www.domain.com/blog/index.html的地址访问您的blog。此后您每次发布新日志时,您的ftp空间中都将被添加相应页面。

提示:

如果您的ftp空间暂时无法访问,也不会影响您的正常提交,您可以在其恢复使用之后发布重建您的blog以看到该日志。
您在上面提到的发布路径中如果已经存放有同名文件,在发布重建您的blog时,该文件将会被覆盖。请您在发布之前慎重检查。
您在网站上的子域名依然有效,全部静态页面依然存在。


我的理解,上面提到的发布重建就是正常的开始发布吧,只是时间可能长点,不知道是不是这样。如果实在不行,照上图中目录,到FTP空间中一个个把目录手动帮它建了

发表评论

空白页面、服务器500错误都有可能是文件属性777造成的

你的网站很多莫名其妙的问题,例如页面空白、服务器500错误、没有可视化编辑器……症结都可能出在文件属性上–我的教训太沉痛了!重装系统……丢失数据……流失会员…… (阅读全文…)

发表评论