Discuz!服务器的CDN问题
有不少站都用了CDN方式优化网站访问速度,在缓存的同时,对于一些Discuz!本身需要实时读取数据的应用模块来说,就会出现问题,已知的,有头像上传失败,改不了头像,上传10%后卡在那里,论坛和UCenter通信类的,如果采用节点方式访问,会造成域名读取解析有误。目前暂无解决办法。
echo | MySQL | 2011 年 8 月 23 日MySQL日志详解
MySQL有几个不同的日志文件
错误日志 记录启动、运行或停止mysqld时出现的问题。
查询日志 记录建立的客户端连接和执行的语句
二进制日志 记录所有更改数据的语句。还用于复制。
慢日志 记录所有执行时间超过long_query_time秒的所有查询或不使用索引的查询。
默认情况下,所有日志创建于mysqld数据目录中。
错误日志
错误日志文件包含了当mysqld启动和停止时,以及服务器在运行过程中发生任何严重错误时的相关信息。
如果mysqld无法启动或者莫名其妙地死掉,mysqld在错误日志中写入相关消息。如果mysqld注意到需要修复一个表,也会在错误日志里面写入消息。
可以用–log-error[=file_name]选项来指定mysqld保存错误日志文件的位置。如果没有给定file_name值,mysqld使用错误日志名host_name.err 并在数据目录中写入日志文件。
echo | MySQL | 2011 年 8 月 19 日MySQL 144错误 Table is marked as crashed and last (automatic?) repair failed
今天给站长处理数据库错误,遇到•[144] Table ‘.\dx20\forum_forum’ is marked as crashed and last (automatic?) repair failed,该站是虚拟空间,安装了新浪微博插件后,导致网站数据量猛增,数据库文件算坏。不知是怎么进行的操作,MySQL数据库的MYD扩展名变成了TMD,经查证是压缩后的格式,解决方法,把TMD改回原扩展名MYD,并用tools工具进行修复数据库即可。
echo | Discuz! | 2011 年 8 月 18 日Discuz!附件扩展名的问题
站长在后台设置附件类型时,有时将字母大写,如png写成PNG,那么程序判断时
$allowext = str_replace(‘ ‘, ”, strtolower($_G[‘forum’][‘attachextensions’]));
做了strtolower(强制小写)处理,那么,当用户上传附件的扩展名为大写时,就会出错了,大家注意下就行。
Discuz!论坛数据库编码从latin1转换到gbk
1. 论坛装的比较早了,当时用的是 mysql 4 ,编码为 latin1
2. 由于后来的屡次升级,bbs 版本为 7.0 了,自然也用到了 Ucenter ,编码也是 latin1
3. 现在要装一个 UCHome , 安装的时候提示 Ucenter 编码不一致。请下载 latin1 版本的 UCHome .
想法和尝试如下:
1. 用mysqldump导出了,然后替换DEFAULT CHARSET为 gbk 。
这个方法可行,但这个数据库比较大,替换。。。还是放弃。
2. 打开 PMA ,修改表的整理为 gbk ,也失败了,我记得成功过的。。。。可能记错了,就是能用也不推荐,这样需要修改好多好多的字段,累死。。。
3. 看到bbs 后台 有一个强制字符,天真的选了 utf8 导出,然后做了一个 utf8 的论坛把数据导入,还是乱的,失败。但是奇怪的是 supesite 这样导出完全没有问题
4. 受到上面的启发,发现安照默认导出的sql文件是 ansi 编码的,而我需要的是gbk版本,文件保存格式也是 ansi 的,那么只要在导出的时候把修改一下导出生成 DEFAULT CHARSET 就好了。
by 圣帅
echo | 杂七杂八 | 2011 年 8 月 17 日读夫唯
夫唯我之前一直没听说过,最近在知道他。seowhy的老大,看了他对seo的独到见解,不得不佩服他的经验是如此的丰富。
seowhy上有不少关于seo方面的知识,看了之后感觉确实都是些基础的东西,学到很多。seo是个循序渐进的过程,就拿论坛导航来讲,要重新被收录,还需要做很多的工作,慢慢来,不要过于急躁。
echo | 杂七杂八 | 2011 年 8 月 16 日lighttpd 服务器做404页面
今天对Discuz!技术博客做了404页面,这样对seo来说大有好处。
说下设置方法,lighttpd配置文件一般在/etc/lighttpd/lighttpd.conf,打开它,找到:
##error-handler for status
把下面的俩句任意一个去掉注释,即#号,然后把error-handler改成自己命名的文件名。
server.error-handler-404 = “./404.html”
#server.error-handler-404 = “/error-handler.php”
因为我新建的文件名叫404.html,所以,去掉第一句注释符号,并改成我自己命名的文件名。重启lighttpd服务即可。
404页面可以自定义,但最好不要直接跳转到首页,不然不利于seo。
本文出处:http://www.uut8.com/?p=61
echo | PHP | 2011 年 8 月 15 日PHPMyAdmin无法载入mysql扩展问题排查
昨天安装了个PHP环境,出现奇怪的问题,PHPMyAdmin无法载入mysql扩展。
其实现在想来,使用哪些版本的php、apache、MySQL,都不重要,之前一直认为版本之间必须得配合着用。
先说问题,我是通过把php.ini放到windows下加载的,修改的也是c:\windows下的php.ini,但就是加载不上,phpinfo里没有MySQL模块,最后找到原因,拷贝到windows目录下的文件,读写属性变了(原文件是可读写执行的),但不知为何编辑器保存成功了。重启机器后,发现论坛(BBS)(外链忽视)php.ini内容没变,得改user权限……
分步安装的确很麻烦,这次安装好了, 可以备份文本文件,下次重装后,只需添加服务就行了。
echo | Discuz! | 2011 年 8 月 12 日移动帖子时的URL调转
Discuz!X2系列去掉了移动帖子后URL跟着跳到对应帖子的页面,这对有些用惯了其它版本的人来说,确实有些不爽,我稍微改了一下。访问论坛
if((in_array('delete', $operations) || in_array('move', $operations)) && !strpos($_SERVER['HTTP_REFERER'], 'search.php?mod=forum')) { $_G['referer'] = 'forum.php?mod=forumdisplay&fid='.$_G['fid'].(!empty($_G['gp_listextra']) ? '&'.rawurldecode($_G['gp_listextra']) : ''); } else { $_G['referer'] = $_G['gp_redirect']; }
改成
if(in_array('delete', $operations) && !strpos($_SERVER['HTTP_REFERER'], 'search.php?mod=forum')) {
$_G['referer'] = 'forum.php?mod=forumdisplay&fid='.$_G['fid'].(!empty($_G['gp_listextra']) ? '&'.rawurldecode($_G['gp_listextra']) : '');
} elseif(in_array('move', $operations)){
$_G['referer'] = $_G['gp_redirect'];
} else{
$_G['referer'] = $_G['gp_redirect'];
}