Technology
修改apache的最大上传文件大小
今天看了下这个站点的统计,惨不忍睹啊
忽然想起在邮箱里还有一些采集的数据
本着不用也是浪费的原则
那就拿来用用吧
现在本机测试看看都是啥数据
下下来一看是个PHPMYADMIN的备份包,里面就是一个SQL文件,有36M大小
然后我启动了PHPNOW,访问了PHPMYADMIN,然后进去创建了一个数据库,导入数据的时候才发现了大问题
上传不了,提示是文件过大,最大只能上传32M,叫我访问帮助文档
我看了一下
1.16 I cannot upload big dump files (memory, HTTP or timeout problems).
Starting with version 2.7.0, the import engine has been re–written and these problems should not occur. If possible, upgrade your phpMyAdmin to the latest version to take advantage of the new import features.
The first things to check (or ask your host provider to check) [...]
弄了一个晚上,终于把火车头的PHPBB web发布模块给弄出来了,我是用英文站测试的
主要是以前在dreamhost申请有app应用,给主域名弄一个论坛,这个论坛的好处是不用钱,而且可以绑米,其他的限制就不知道了
反正玩玩而已,数据的安全什么的懒得管他,只是在落伍发过一次网址,结果N多发帖机就盯上了,只好到后台把BBCODE的URL解释功能关掉,如果以后还碍眼,直接把BBCODE关掉
然后我研究了一下火车头的发布模块,以前弄WORDPRESS模块的时候因为是ET采集器的思路,所以直接在后台传个接口,对传送数据的程序这边就没啥要求了,只要提交上去就可以了
但是现在申请的这个APP却是不可以上传任何接口文件的,没办法,迎着困难而上吧
结果,这个小困难浪费了我一晚上的时间,我首先用火车头的抓包工具抓FORM,但是提示出错,然后我手工一个一个去找imput和textarea
测试了半天,老是说我提交的来路不正确,去下了一个抓包工具Fiddler2,研究了一下随机值,发现有个form_token变来变去
然后郁闷了半天才发现火车头有个“随机值”获取,一切变得豁然开朗
先把form_token抓下来,看看似乎还有两个隐藏域,继续抓creation_time和lastclick
仔细研究了一下发表的FORM,又发现POST的地址有个SID,似乎需要验证什么东西,抓吧抓吧,放到“发表地址后缀”那里
然后其他的相应设置,终于可以测试了,到测试界面,点测试
出现一个奇怪的问题,提交并没成功,而且主题和内容都是空的,想了半天,把测试发送的主题和内容换成数字
当当当当,终于看到了成功的字眼,我看了一下,似乎是由于标题里含有中文,那论坛不接受,所以就变成空的了
用数字或者字母都可以测试成功,剩下的事情就很简单了~找个网站就开始采集吧
漏了一点,登录模式我是用经典的模式登录的,用新的模式似乎老是出问题
恐怕是和SID有关~具体的原因我就不去探究了,目前只要能发表就可以了
给ai8添加了一个自动发布插件
最近ai8来的人实在是少得可怜~进后台一看,还有N多的文章没发表成功,相当于很久没更新了
以前记得有一个插件是可以把预发表的文章全发表出去的~
经过搜索,找到了fix-schedule-post
去搜索引擎搜索一下就可以找到相关的信息~
然后装上去,激活,搞定
使用DEDE时候常用的一些小窍门(很久以前弄的,复制过这边来)
采集完后,或者使用伪静态的时候执行一下,可以把所有文章设置为动态文
UPDATE `dede_archives` SET `ismake` = ‘-1′ ;
在某些标签里替换某些文字称为你需要的文字
@me=str_replace(’src=”str1′,’src=”str2′,@me);
采集后需要替换文章内的一些乱码
UPDATE `dede_addonarticle` SET `body` = replace(body, ‘我是乱码’,”)
采集后需要替换标题的一些乱码
UPDATE `dede_archives` SET `title` = replace(title, ‘我是乱码’,’ ‘)
删除空白内容的文档
delete dede_addonarticle,dede_archives FROM dede_addonarticle,dede_archives where dede_addonarticle.body=” and dede_addonarticle.aid=dede_archives.id
dede5.1生成的时候提示出错
找到管理文件夹的makehtml_archives_action.php
在72行提示错误后天添
$sql123=”delete from dede_full_search where aid=”.$ID;
$dsql->ExecuteNoneQuery($sql123);
echo “删除 $ID 文档成功”;
DEDE数据库内容替换 例如 替换 栏目ID为128的文章 标题中的 [贴图]
选择数据表与字段:dede_archives
要替换的字段:title
替换方式:正则表达式 主键字段:id
被替换内容:\[(.*)\]
替换条件:typeid=128
就可以了
dede5.3删除空白的文档
删除内容表.用
delete from dede_addonarticle where length(body)<10
删除文
DELETE dede_archives
from dede_archives
left join dede_addonarticle?? on dede_archives.id=dede_addonarticle.aid
where dede_addonarticle.aid is null
删除索引
DELETE dede_arctiny
from [...]
给朋友弄了一个godaddy的免费空间
原来一直说gd的win主机问题众多,但是听说可以去广告,比如某些人装wp就一点广告都没有
所以朋友说想弄个免费空间的时候我就想到了GD,以前注册的时候还剩下很多信用点(貌似那个单词直接翻译就是这么个意思)
然后开通了一个免费的win空间,10G大小,最重要的是IP还没被墙,呵呵
用的是iis7,php5的,提交申请后几分钟就开通了,然后我下了个最新版本的dede传了上去
结果安装的时候竟然提示所有的文件夹都没有写入权限,让我非常惊讶,按理说win空间还要弄啥写入权限啊,国内的空间从来没这种问题
然后在FTP也设置不了,FTP里面只是设置LINUX空间的文件夹权限的,什么777
找了半天资料,某人说在控制面板里有设置,我在后台找了一下,里面有个文件管理器,抱着死马当活马医的信念进去了
果然在顶上发现了一个 权限 的按钮,英文忘记了,似乎是pemission
发现还蛮人性化的,还可以设置继承属性,也就是选中一个文件夹以后,设置的时候同时选中继承的话,这个文件夹下面的所有文件夹都具有和这个文件夹一样的属性
设置完了以后安装,发现有个条件没满足~就是安装第3步有个allow_url_fopen关掉了
想想不爽,于是看资料,自己设置了一个php5.ini放到了网站根目录,这个时候杯具发生了
再次刷新安装程序的时候发现,allow_url_fopen是开了,但是mysql竟然不能连了,MYSQL的函数全没了
还有GD的函数也是全没了~安装第3步那里本来只有第一个不能通过的,现在是第三个和第四个不能通过了
mysql函数都没有怎么连SQL啊,找啊找,找资料
没办法,自己一步一步摸索,找到默认的php5.ini进行研究,然后终于配制出了一个新的php5.ini
放上去,心力憔悴,就睡觉了
今天起来一看,哇~全测试通过了,看来这个php5.ini还是可以的,但是睡觉前几秒我刷新的时候还没得的啊
由此猜想,GD的php5.ini可能是一定时间读取一次,刚上传上去是没效果的,要等一段时间才会起效
附上我的php5.ini
register_globals = off
allow_url_fopen = on
expose_php = Off
max_input_time = 60
variables_order = “EGPCS”
extension_dir = “c:\php5\ext”
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_gd2.dll
extension=php_gettext.dll
upload_tmp_dir = /tmp
precision = 12
SMTP = relay-hosting.secureserver.net
url_rewriter.tags = “a=href,area=href,frame=src,input=src,form=,fieldset=”
[Zend]
zend_extension=/usr/local/zo/ZendExtensionManager.so
zend_extension=/usr/local/zo/4_3/ZendOptimizer.so
[MySQL]
; Allow or prevent persistent links.
mysql.allow_persistent = On
; Maximum number of persistent links.? -1 means no limit.
mysql.max_persistent = -1
; Maximum number of links (persistent + non-persistent).? -1 means no limit.
mysql.max_links = -1
; Default [...]
从css里面提取出图片
帮朋友弄网站,仿个风格,发现CSS里面的图片要一个一个下载很麻烦~
想了一下,干脆弄个php程序,自动把CSS里的图片网址分离出来
<?php
ini_set(“error_reporting”,”E_ALL & ~E_NOTICE”);
$str = file(“http://127.0.0.1/article.css”);//要读取的CSS文件
$count = count($str);
//函数 count 这个函式用来计算阵列的元素个数
for ($i=0;$i<$count;$i++){
$file.= $str[$i];
//用 for循环,把所有数组中的数据加起来
}
$patterns=array(“/\(([^)]*)\)/”);
$replace=array(“”);
preg_match_all(“/\(([^)]*)\)/”, $file, $matches);//匹配括号里的东西,就是图片网址
$matches=$matches[1];
//print_r($matches);//测试看看数组里到底有东西没有
$count = count($matches);
for ($i=0;$i<$count;$i++){
$matches[$i]=str_replace(“..”,”http://www.xxxx.com/templets”,$matches[$i]);
//替换成真正的网址
echo “<A HREF=”.$matches[$i].”>”.$matches[$i].”</A>”.”<br>”;//显示成连接的形式
}
?>
然后保存为一个php文件,然后访问,得一堆网址,右键,迅雷下载全部链接
转移爱吧的数据到了新空间,弄了一下wordpress评论功能
发现很多机器人发的评论
懒得在后台一个一个的审核了
直接把发表评论的功能修改了一下~
在后台把那个反垃圾评论的的插件关掉
然后修改wp-comments-post.php里面~
先把$comment_author_url?? = null;这样评论的人就没法加连接在头像名称那里了
然后正则替换评论内容
//给我替换,嘿嘿
$comment_content=preg_replace(“|\[url(.*)\[/url\]|”,””,$comment_content) ;
$comment_content=preg_replace(“|\[img\](.*)\[/img\]|”,””,$comment_content) ;
$comment_content=preg_replace(“|\[([^\]]*)\]|”,””,$comment_content) ;
$comment_content=preg_replace(“|<([^>]*)>|”,””,$comment_content) ;
$comment_content=preg_replace(“|http://(.*)html|”,””,$comment_content) ;
$comment_content=preg_replace(“|http://(.*)php|”,””,$comment_content) ;
$comment_content=preg_replace(“|http://(.*)asp|”,””,$comment_content) ;
$comment_content=preg_replace(“|http://(.*)com|”,””,$comment_content) ;
$comment_content=preg_replace(“|http://(.*)net|”,””,$comment_content) ;
$comment_content=preg_replace(“|http://(.*)org|”,””,$comment_content) ;
$comment_content=preg_replace(“|http://(.*)cc|”,””,$comment_content) ;
$comment_content=preg_replace(“|http://(.*)info|”,””,$comment_content) ;
把BB代码和HTML全过滤掉
然后统计内容长度
if(strlen($comment_content)<50){
$comment_content=null;
}
太短的直接设置为空
哈哈哈~~~~~~~~
就发不出评论了
找到个显示数组的PHP函数
//下面是标准化输出数组结果
echo “<pre>”;
print_r($r11);
echo “</pre>”;
以前最头疼数组了~不知道数组里有啥元素,具体有啥数据
今天又要弄这个头疼的东西了,是在忍不住了,上网搜索了一下,得到这个东西
呵呵,对我这种半路出家的人来说,有些基础的东西确实是非常薄弱的
因为我确实没系统学习过PHP,并且并非电脑相关专业的,所以有些东西可能高手们觉得实在不是问题但是到我这里就成了大问题
努力学习吧,高手也是由菜鸟成长起来的嘛~
Flickr调用的图变XX了,装了一个Jay Access Flickr插件
本来想装个PDF插件~这样好把文章直接转成PDF保存到本地~
找了一下,找到了一个,但是发现没有简体中文的语言可选,繁体中文生成的PDF里面是乱码,而且这个插件是发送PDF到邮箱的,有点不爽,我需要的是直接可以下载的
所以还是把那个插件删除了
然后想起Flickr的图都变成XX了~找了一下资料~别人推荐有几个插件~我下了一个装上了,真的可以正常显示了
插件名字叫Jay Access Flickr,似乎是把Flickr的一些装图片的服务器的IP换成了其他的
KINGCMS栏目那里加个字段
做了个站,需要在栏目列表的每个栏目名称下加个英文名称,原来的想法是把标题或者关键词什么的改成那个字段,后来觉得还是练练手改改看
先到数据库里king_list添加个字段kenname,我是按照kkeywords的设置,将它的属性设置为
kenname
char(100)
utf8_general_ci
?
是
NULL
然后就是修改后台程序了,找到portal下面的manage.php,再找到这个函数king_edt(),这个函数就是编辑栏目的
然后$_sql=后面的一串读取数据库里的字段里面添加上我们刚添加的字段kenname,我是直接添加在kkeywords的前面~方便以后管理
然后再往下就是生成后台编辑表单的代码,找到
?//kkeywords
?$_array=array(
??array(‘kkeywords’,0,0,100),
?);
在前面按葫芦画瓢添
?//kenname 小货添加,英文名字
?$_array=array(
??array(‘kenname’,0,1,100),
?);
?$s.=$king->htmForm($king->lang->get(‘portal/label/kenname’).’ (1-100, ‘.$king->lang->get(‘portal/label/kenname1′).’)’,’<input type=”text” name=”kenname” value=”‘.htmlspecialchars($data['kenname']).’” maxlength=”100″ />’,$_array,’EnName’);
注意$king->lang->get(‘portal/label/kenname’)的意思是读取语言文件,有个问题是这个kenname是我们新添加的,原来的语言文件肯定没有,所以我们必须到语言文件里补全
找到语言文件portal\language\zh-cn.xml
在<label>后面加上我们新添加的词汇
??<kenname>栏目英文名</kenname>
??<kenname1>在导航下面显示的英文名</kenname1>
然后回到manage.php,刚才设置的是读取数据库,并显示成表单,现在是入库,可以往下搜索
??$_array=array(
???’modelid’=>($modelid?$modelid:0),
???’listid1′=>$data['listid1'],
???’klistname’=>$data['klistname'],
???’ktitle’=>$data['ktitle'],
然后在后面添加我们要入库的字段
?’kenname’=>$data['kenname'],
那么后台就修改完成了
但是前台显示的时候直接调用{king:enname/}是啥都不显示的~因为我们没有将这个字段放到模板引擎里
找到portal/core.class.php
找到这个函数public function getField($type1,$type2)
然后把我们需要显示的字段加进下面这行去
???’field’=>array(‘ktitle’,’klisttitle’,’klistname’,’kkeywords’,’klistpath’,’kdescription’,’kimage’,’kcontent’,’klanguage’),//字段
然后刷新~终于在前台可以显示了
最近评论