- 博客(37)
- 资源 (5)
- 收藏
- 关注
原创 数据库授权,禁止某个表的删除功能
一个网站通常使用一个mysql身份连接数据库,然后进行各种增删改查操作。比如phpcms系统。但最近遇到个问题,那就是操作日志不允许删除。可是,用户授权是按数据库授权的。整个数据库中的表都有删除功能。要取消,也不是那么容易的。经过一阵折腾,终于解决。特作记录。1,首先查看用户权限:show grants for userxx结果返回两行记录第一行是创建用户及密码的。第二是权限的:GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX
2020-08-04 14:15:36
1975
原创 一个有用的php函数:读取大文件最后几行记录
通常我们需要读取一些日志文件,但有时日志很大,有时记录的时间很长,我们只想看最新的最近的记录,这就需要从最后几行读取。这个函数就比较有用了。<?php/** * 取文件最后$n行 * @param string $file 文件路径 * @param int $line 最后几行 * @return mixed 成功则返回字符串 */function getLastLines($file,$line=1){ if(!$fp=fopen($file,'r')){ ech
2020-08-04 13:38:48
242
原创 VirtualBox 无法启动,提示Failed to open a session for the virtual machine
启动Virtualbox时突然莫名其妙的弹出一个提示Failed to open a session for the virtual machine win-7. Failed to load unit ‘HGCM’ (VERR_INVALID_PA…在网上查了一下,有的说以管理员的身份启动,试了一下也不行,还有帖子说因为CPU不支持VT-X技术或者VT-X被锁定。我打开另一个虚拟系统是完全正常的。只是打不开这个win7虚拟系统。因此,不会是VT-X的问题。分析了下。之前我每次挂起虚拟系统时,都是选
2020-05-29 12:20:15
2608
原创 让fiddler可以直接使用mysql数据库
将fiddler抓包数据直接存入数据库)让fiddler可以直接使用mysql数据库让fiddler可以直接使用mysql数据库fiddler抓包工具的用法很多人讲得多。它不仅可以抓https的包(现在大部分网址已经使用https协议了),而且优于其它抓包工具的是,它可以通过写脚本来灵活修改和处理数据。脚本使用这块,介绍的不多,少数介绍的,也只是照抄一些基础的代码,比如修改请求或返回数据。对于...
2019-10-18 16:01:08
2374
1
原创 磁盘扩容操作日志
磁盘扩容操作日志阿里云ecs挂的磁盘,用着用着空间满了,得扩容。一直担心扩容操作中重建分区会把原数据删除了,不敢弄。今天经过实操,证明这种担心是多余的。重建分区并没有丢数据。所以,想扩容的可以操作了。当然还是先备份为好,万一你旧分区删了,新分区没搞成功,把盘弄废了呢。扩容第一步,当然是要花钱买新的容量。在控制台上扩容数据盘的磁盘空间。简单说付钱就行。然后要重启服务器。这些都容易。然后才是登陆...
2019-03-21 12:07:15
455
原创 关于 # tesseract #的使用
关于 # tesseract #的使用记得以前安装 tesseract的py库很麻烦,装不上要装whl文件。现在,装pytesseract,很简单。 安装 tesseract也是一路回车,记得选上中文库就行了。这里记录几个使用心得:1,经测试,3.5版,对中文的识别率感人,达不到实用要求。而使用 tesseract 4.0版,识别率则明显提升,只有少数错误。所以改用4.0。2,不过,3.5和...
2019-01-03 10:54:01
203
原创 phpcmsv9禁止提交信息到官网
phpcmsv9后台登陆时,会向官网http://update.v9.phpcms.cn联网,名这检查更新,实际同时也收集网站以及管理员的用户信息还有登陆者的设备等信息。以前经常更新,可以说有必要,但phpcmsv9已经很多年不更新了。只剩下收集信息的功能了。 开始以为去掉后台模板中的相关网址就行了。结果登陆时还是发现会向官网提交信息。于是追了一下。 在登陆成功后,会首先显示一个默认页。
2017-11-22 16:34:39
1022
转载 Fidder Script
Fidder ScriptEditor具有语法高亮和语法检查的功能,并在右侧面板提供了Fiddler内置的函数列表。 通过展开浏览右侧的函数列表,就基本上可以大概的了解到几个可能会用到的函数了:FiddlerApplication.oProxy.SendRequestFiddlerApplication.oProxy.SendRequestAndWaitFiddlerObject.utilIss
2017-11-20 21:46:58
970
原创 phpcms不允许评论仍然能提交评论的BUG修复
phpcms v9系统里,如果某个文章设定不允许评论,那么,你打开文章,是看不到评论的。但它只是从模板显示上不显示而已。如果你直接打开评论网址,仍然能显示评论,也能提交评论。或者你不打开评论页面,通过将其它文章的评论网址,改个参数,将那个评论的文章ID号为这个文章的ID号,则仍然能提交对该文的评论。也就是说,并没有从控制器上禁止提交评论。 解决办法,就是在提交评论时,增加对是否允许评论的判断。如果
2017-05-03 10:08:10
863
原创 图片和附件传远程服务器实现图文分离,完全解决
上次写了《phpcms实现图文分离,文件上传到远程服务器的方法》,将图片附件传到远程服务器,算是实现了网站的图文分离。 上次这个方法, 就是两台服务器共用一个数据库,共同的一级域名,权限问题自动解决了。但使用场景有限制,适应性不强。要共享数据库,也受各种环境限制。比如不同数据库怎么办?不同网站域名怎么办。 图文分离可以明显减轻网站服务器负担,降低流量消耗。使用和需求越来越多。如何将图
2017-02-28 12:55:47
2835
原创 phpcms设计缺陷未审核文章也可看,解决
phpcms 在权限控制方面做得极为细致,功能相当全面。比如后台操作,默认禁止,没有明确授权的文件和action。都是不允许操作的。但最近,一条未经审核发布的一审中文章,却被百度抓取,并且点击后可以查看。经过查找原因。发现是设计上的一个逻辑问题未处理好造成的。 通常,文章设定审核程序后,未经审核,它的状态通常是1,或者2(到二级审核),只有经过审核同意发布,它的状态才是正常的事99。如果是动
2017-02-28 12:25:20
1805
原创 PHPCMS隐藏核心目录增强安全性
为了安全,将默认的hphcms目录改成其它名字,比如abcms.这样模板等文件就不能按默认的目录找到直接访问。可以提高安全性。 改了之后,由于基础调用文件base.php的目录变了。如果不改,网站无法运行。 可将include PHPCMS_PATH.’/phpcms/base.php’;改成 include PHPCMS_PATH.’/abcms/base.php’; 但只改index中的
2017-02-23 18:26:53
1352
原创 ftp上传文件慢卡问题的解决
linux系统下,安装有VSFTP服务器,多人共用一个ftp账号。以前传文件没问题。最近遇到登陆不顺(不是不能登陆),列表显示和传文件都慢,卡的问题。具体表现为:登陆不报错,但打开空白。列表也空白,要半天才出来。传文件也要反复多次才能上传成功。 开始以为是防火墙的问题。关了一样。时好时坏。有人说是网络问题。但同样在阿里云上另一台服务器没这个问题。从软件信息来看,有报错:[11:54:59] [R]
2017-02-16 12:28:00
19544
1
原创 今日头条视频采集方法
这是一个视频网址:http://www.toutiao.com/a6372122640186720513/ (首富马云小品首秀,搭档宋小宝却当面把首富们都损了一遍) 访问。在页面JS脚本中找到 var player; player={ videoid:’8c601b01d1b24ff9b543f3b378b707ea’, share_url:’http://toutia
2017-01-06 09:55:44
9075
2
原创 nginx加载伪静态文件.htaccess
很多网站需要采用伪静态来访问动态网页。所以像phpcms这样的系统,都提供了一个.htaccess文件,供写伪静态规则。但这个规则是针对Apache的。在nginx服务器上并不起作用。 nginx 可以直接将伪静态规则写在配置文件中,但这个需要有服务器管理权限,普通站长不能经常操作或者不会操作。所以,放在网站根目录下的.htaccess文件,更方便站长随时修改添加伪静态规则。 要让.h
2016-12-05 17:44:17
9277
原创 phpcms换目录后网址不对问题的解决
在网站根目录下,建了个phpcms目录,将phpcms系统传到这个目录,建了一个测试站。http://xxxxx/phpcms/ 后来,感觉这个目录名太长,且与网站系统相同。于是改了下,将目录改成了pcms。结果,进后台进不了,直接在网址中将目录名改成pcms,后台登陆可以出来了,但验证码又出不来,一查看,还是网址路径改变后导致出错。同样用改网址办法,出来验证码,进了后台,页面全乱了,因为CSS,
2016-11-20 11:28:54
2157
2
原创 PHP5.5以上V9会一直报错, mysql 如何改为 mysqli
PHP5.5以上V9会一直报错.。运行后,文件:/caches/error_log.php 里面一直会出现这个提示: The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead | phpcms\libs\classes\mysql.class.php | 56 e
2016-10-29 06:48:12
5125
1
原创 phpcms实现图文分离,文件上传到远程服务器的方法
APP_PATH是phpcmsv9中的动态域名。也就是网站的域名。看似简单,其实的妙用。 当我们一个网站时看不出什么。但当我们想将服务器分散以减轻压力时,就能起作用了。 环境:阿里云主机网站提供静态和手机动态服务。当流量大了导致服务器慢,既影响手机访问,又导致后台无法登陆和工作。为保证手机APP正常。拟将占流量的图片分离,另购一台阿里云主机,使用复制的phpcms,共用一个数据库。两台使用
2016-06-24 22:15:58
4387
转载 phpcms 同步到发布站点,发布站点到远程FTP根目录
详细描述见 http://bbs.phpcms.cn/thread-283350-1-1.html 我这里只贴修改记录第一步:修改 phpcms/modules/admin/templates/site_add.tpl.php 找到 复制代码大约在64行的位置将他下面的整个table 替换成如下代码: " o
2016-06-24 21:35:51
3064
1
转载 PHPCMS V9 更换域名,附件地址无法批更新(更换变便)问题>解决方法!!
大家应该都有在域名更换(比如说,从本地上传到空间)的情况下,用内容>附件管理>附件地址替换 功能.基本上替换不了所有表中原来域名的地址.现PHPCMS V9最新版本的依旧存在些问题.查找原因发现phpcms\modules\attachment\address.php update() 中(最新版本LINE35)如下代码存在问题:if (preg_match('/(char|
2016-06-24 20:55:10
2222
原创 vsftpd启动失败
今天想改vsftp的默认端口号,在鸟哥的linux私房菜中介绍说listen_port=21vsftpd 使用的命令通道 port,如果你想要使用非正规的埠号,在这个设定项目修改吧! 不过你必须要知道,这个设定值仅适合以 stand alone 的方式来启动.listen=YES (NO)若设定为 YES 表示 vsftpd 是以 standalone 的方式来启动的! 预设是 N
2016-05-19 17:39:02
3307
转载 nginx php fastcgi Connection reset by peer的原因及解决办法
今天服务器反应慢,查看错误日志,提示 Connection reset by peer。找了下原因,感觉这个分析比较实用。留存。Connection reset by peer这个错误是在nginx的错误日志中发现的,为了更全面的掌握nginx运行的异常,强烈建议在nginx的全局配置中增加error_log logs/error.log notice;这样,就
2016-05-06 12:38:08
8096
原创 php伪装客户IP采集
//伪装客户IP采集function hideip_gethtml($url) { $ip=$_SERVER['REMOTE_ADDR']; $headers['CLIENT-IP'] = $ip; $headers['X-FORWARDED-FOR'] = $ip; $headerArr = array(); forea
2016-04-15 17:53:24
2026
转载 Linux下显示IP地理位置信息的小工具-nali
以前查IP地址,一般借助第三方的API,比如ip138,google什么的,需要通过网络访问来获取。有了Linux下显示IP地理位置信息的小工具-nali.就可以很方便的在本机查询。特别是查询和分析日志时,在后面添加一个指令,就可以获得IP的物理方位等信息,非常方便。
2016-04-15 12:28:24
353
转载 php隐藏图片地址一例
网上看到的,留存备用。参考如下: $image_path="images/" $image_file=$image_path.$_GET['name']; $sTmpVar = fread(fopen($image_file, 'r'), filesize($image_path)); header("Content-type: image/* ")
2015-11-22 16:25:01
1015
原创 PHPCMSV9文章页显示发布者
因某些原因,比如工作统计责任划分等,有时文章后面要显示发布编辑的名字。 网上找的一些说PHPCMS解决发布者不显示问题的帖子。不知是由于说的是以前的版本,还是其它原因。文章的行数对不上,按那个方法要改三个文件以上。而且按它说的改了也没有效果。 自己研究了下代码,最后只在一个文件中添加代码,就解决了。特记录之。第一步:修改 content_model.class.php 文件
2015-10-10 20:49:46
2083
原创 更换phpcms后台编辑器自动添加的<div>标签为<P>标签
$infos=htmlspecialchars($content);$infos=stripos($infos,"<div>",0)!==false?str_replace("<div>","<P>",$infos)content;$infos=stripos($infos,"</div>",0)!==false?str_replace("&
2015-10-07 18:15:24
636
原创 phpcms采集时提示”没有找到网址列表,请先进行网址采集“的解决方法
全新安装的phpcmsV9。编写好采集规则后,点测试,能提到网址,也能提取到文章。但实际进行采集时,网址采集成功后,进行内容采集时,却提示示”没有找到网址列表,请先进行网址采集“。明明网址采集到了。应该是程序的问题。网上找了下,果然是代码问题。修改办法:修改phpcms\modules\collection\node.php第291行 if (empt
2015-09-27 12:22:37
3987
转载 v9 的发布文章前预览功能
下面是需要修改的文件,代码量很少修改发布内容模板,文件位于:./phpcms/modules/content/templates/content_add.tpl.php复制代码查找:复制代码在上面那行后面加上: function preview_content2() {
2015-09-24 16:00:11
682
转载 phpcms v9模块操作列表
phpcms\phpcms\base.php1.调用数据库模型$this->db = pc_base::load_model('test_model');其中$this->db中所支持的方法请参照phpcms/libs/classes/model.class.php中方法2.加载系统类$http = pc_base::load_sys_class('http
2015-09-24 15:28:02
707
转载 v9教你输出最后一次sql语句
mysql.class.php 位于phpcms/libs/classes在public $lastqueryid = null;后面加入代码public $lastquerysql = null; //最后一次查询sql复制代码修改execute方法private function execute($sql) {
2015-09-24 15:25:26
895
转载 修改phpcms V9的后台登录地址
这是我看到的最简单办法。基本不动程序原有文件。修改phpcms V9的后台登录地址1.在网站根目录创建一个root文件夹,在这个文件夹里新建一个文件index.php,内容为:[php] view plaincopy define('PHPCMS_PATH', realpath(dirname(__FILE__) . '/..') .
2015-09-24 13:44:11
869
原创 获取网页字符编码的正则表达式
$wcharset = preg_match("/,$filecnt,$temp) ? strtolower($temp[1]):""; $wtitle = preg_match("/(.*)/isU",$filecnt,$temp) ? $temp[1]:""; 这个网上的,还不是最好的。 最完美的正则表达式是这样的:preg_match('/]*?charset=([
2015-09-13 13:55:52
1049
2
转载 减少linux服务器大量TIME_WAIT
将项目部署到linux上后,发现系统有大量的TIME_WAIT状态的链接,大量TIME_WAIT状态的链接不能被及时回收导致的结果就是系统可用socket被耗尽而无法处理新的请求。对于http协议的短连接请求,应该要防止产生大量的TIME_WAIT,我们可以通过设置linux网络参数来达到目的,步骤如下:1、编辑sysctl.conf#cd /etc/#vim sysctl
2015-09-04 14:22:56
641
原创 Phpcmsv9升级后验证码不显示的解决一 例
决定到这里开一个博客,把最近和将来遇到的技术问题经验积累起来。也将把相关的知识留存备记备用。半路出家搞网站技术,也算记录技术学习过程吧 网站采用Phpcmsv9,版本还是2013年5月以前的。中午点击升级,提示升级成功。但在验证环节,提出超过40秒出错。考虑自己有更改代码 。就没有管。退出。 不久,编辑就反应,后台无法登陆了。验证码不显示。 当然是到网上找
2015-08-11 16:01:13
4570
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人