php开发

监控discuz防水墙云平台返回的内容的代码


监控discuz防水墙云平台返回的内容的代码

api\manyou\Service\Client\Restful.php


搜索代码
$result = $this->_fsockopen($url, 4096, $data, '', false, $ip, 5);

在这句下面添加
writelog('debug', $url . '-' . $ip . '-' . var_export($data, true) . '-'. var_export($result));


最后结果会写在 /data/log/debug.log 里面

Discuz在hhvm环境下显示不正常,没法使用的解决办法

HipHop VM(hhvm)是Facebook推出的用来执行PHP代码的虚拟机,它是一个PHP的JIT(Just-In- Time)编译器,同时具有产生快速代码和即时编译的优点。

HHVM安装其实还好,但是在discuz在hhvm环境下显示不正常。

其实出现这个问题只是discuz使 用了在php5.5.0已经弃用了

PREG_REPLACE(http://php.net/manual/en/reference.pcre.pattern.modifiers.php#reference.pcre.pattern.modifiers.eval)。。。

使用回调函数替换就好。

下面张自然不说废话了,直接说方法,打开discuz根目录/source/function/cache下的cache_styles.php替换以下代码

» 阅读全文

关键词: hhvm , discuz

DiscuzX针对非登陆用户只允许查看贴子前50页

应用场景:

有时候我们希望针对Discuz 非登陆用户,帖子页只显示50页,超过给予提示登陆后查看,修改步骤如下:

修改文件:/source/class/helper/helper_page.php 


public static function multi($num, $perpage, $curpage, $mpurl, $maxpages = 0, 
$page = 10, $autogoto = FALSE, $simple = FALSE, $jsfunc = FALSE) {
global $_G;

//start  针对帖子页非登陆用户,50页不显示 step 1/2。
global $mod;
if($mod == 'viewthread' && !$_G['uid']){
    $maxpages = 50;
    $setmaxpages =1;
}
//end

第二处:

» 阅读全文

关键词: 贴子前50页 , discuzx

随手搞的采集某政府信息网的table表格数据

随手搞的采集某政府信息网的table表格数据,总结一句话,政府网站的太多都是table表格,会采集的非常简单,不会用技巧采集的就非常蛋疼了。。。。

» 阅读全文

关键词: table表格 , 采集

Discuz后台板块太多,导致Discuz后台板块管理显示板块不完全的解决办法

很多的大型网站使用discuz的由于开了很多的板块导致Discuz后台板块管理显示板块不完全。

显示不完全,可能浏览器有很多的关系,Discuz后台板块太多,导致Discuz后台板块管理显示板块不完全的解决办法是什么呢,

其实咱们可以让他按照大的分区的方式进行显示即可。

后台板块管理的文件是 admincp_forums.php


约46行,有代码 :

$query = C::t('forum_forum')->fetch_all_forum_for_sub_order();


这个就是获取所有板块的数据。其实我们只要通过get方式传递一个大分区的id参数给

» 阅读全文

关键词: bug , discuz

监控Discuz执行SQL查询代码,找出待优化中的慢查询SQL语句

某大型网站Discuz系统被大量改动过,经历了几代程序程序员的努力之后,慢查询日志越来越多,有一些更牛逼的sql查询语句扫描全表,上千万行的数据量,把Mysql累死了。于是就想到如果找到这段代码,但是总是找不到。

没办法想了一计策,要知道所有的discuz的查询都要经过:discuz_database.php的query去执行,所以监控这里即可。

discuz_database.php文件;

» 阅读全文

关键词: 监控sql , discuz优化

WordPress 限制上传图片大小的方法

网上有很多朋友问到如果限制wordpress的上传图片的大小,其实比较简单,我也是百度的。

在主题的function.php 目录中添加如下代码:

//限制上传文件的最大体积

function max_up_size() {
    return 500*1024; // 500 kb
}
add_filter('upload_size_limit', 'max_up_size');

关键词: wordpress

ThinkPHP 跨分组和跨模块调用控制器方法(A方法与R方法)

遇到这样的场景,某一个项目需要被重构,那么所有的URL地址都是地址 www.zizaiyou.cn /xxxx 为数字型,但是有不同的分类,现在重构每一个分类就是一个分组,现在问题来了,如果一旦分组之后URL就没法使用 www.zizaiyou.cn /xxxx类型了,需要改为:www.zizaiyou.cn /分组/ xxxx ,那怎么做到 thinkphp不同的分组使用相同的www.zizaiyou.cn /xxxx 呢?

我的思路很简单,全部将 www.zizaiyou.cn /xxxx 转发到默认的控制器,默认控制器,或者数字之后,进行查询分类,然后加载对应分组的模块和控制。

那怎么实现:ThinkPHP 跨分组跨模块调用控制器方法(A方法与R方法)呢?

通过 A 方法跨模块调用操作

» 阅读全文

关键词: 跨模块 , 跨分组 , thinkphp