导航:首页 > 编程语言 > php监测分析

php监测分析

发布时间:2023-06-28 19:18:59

1. 用什么工具检测php网站是否存在注入漏洞

PHP的安全性现在是越来越好了PHP6。0版本都把存在的SQL漏洞都解决了
但是为了安全起见还是应该做安全检测
检测方法:SQL 注入法 、脚本代码、参数传递等方法 具体情况参看PHP官方网站 安全篇章

2. php 服务器怎么监控多个下级工作站的网络状态,cpu,磁盘使用情况呢

1,linux下可以在/proc/cpuinfo中看到每个cpu的详细信息。但是对于双核的cpu,在cpuinfo中会看到两个cpu。常常会让人误以为是两个单核的cpu。其实应该通过PhysicalProcessorID来区分单核和双核。而PhysicalProcessorID可以从cpuinfo或者dmesg中找到.flags如果有ht说明支持超线程技术判断物理CPU的个数可以查看physicalid的值,相同则为同一个物理CPU2,查看内存大小:cat/proc/meminfo|grepMemTotal3,其他一些可以查看详细linux系统信息的命令和方法:uname-a#查看内核/操作系统/CPU信息的linux系统信息命令head-n1/etc/issue#查看操作系统版本,是数字1不是字母Lcat/proc/cpuinfo#查看CPU信息的linux系统信息命令hostname#查看计算机名的linux系统信息命令lspci-tv#列出所有PCI设备lsusb-tv#列出所有USB设备的linux系统信息命令lsmod#列出加载的内核模块env#查看环境变量资源free-m#查看内存使用量和交换区使用量df-h#查看各分区使用情况-sh#查看指定目录的大小grepMemTotal/proc/meminfo#查看内存总量grepMemFree/proc/meminfo#查看空闲内存量uptime#查看系统运行时间、用户数、负载cat/proc/loadavg#查看系统负载磁盘和分区mount|column-t#查看挂接的分区状态fdisk-l#查看所有分区swapon-s#查看所有交换分区hdparm-i/dev/hda#查看磁盘参数(仅适用于IDE设备)dmesg|grepIDE#查看启动时IDE设备检测状况网络ifconfig#查看所有网络接口的属性iptables-L#查看防火墙设置route-n#查看路由表netstat-lntp#查看所有监听端口netstat-antp#查看所有已经建立的连接netstat-s#查看网络统计信息进程ps-ef#查看所有进程top#实时显示进程状态用户w#查看活动用户id#查看指定用户信息last#查看用户登录日志cut-d:-f1/etc/passwd#查看系统所有用户cut-d:-f1/etc/group#查看系统所有组crontab-l#查看当前用户的计划任务服务chkconfig–list#列出所有系统服务chkconfig–list|grepon#列出所有启动的系统服务程序rpm-qa#查看所有安装的软件包cat/proc/cpuinfo:查看CPU相关参数的linux系统命令cat/proc/partitions:查看linux硬盘和分区信息的系统信息命令cat/proc/meminfo:查看linux系统内存信息的linux系统命令cat/proc/version:查看版本,类似uname-rcat/proc/ioports:查看设备io端口cat/proc/interrupts:查看中断cat/proc/pci:查看pci设备的信息cat/proc/swaps:查看所有swap分区的信息

3. 如何使用PHP实时监控Linux服务器的cpu,内存,硬盘信息

1,Linux下可以在/proc/cpuinfo中看到每个cpu的详细信息。但是对于双核的cpu,在cpuinfo中会看到两个cpu。常常会让人误以为是两个单核的cpu。
其实应该通过Physical
Processor
ID来区分单核和双核。而Physical
Processor
ID可以从cpuinfo或者dmesg中找到.
flags
如果有
ht
说明
支持超线程技术
判断物理CPU的个数可以查看physical
id
的值,相同则为同一个物理CPU
2,查看内存大小:
cat
/proc/meminfo
|grep
MemTotal
3,其他一些可以查看详细
linux系统
信息的命令和方法:
uname
-a
#
查看内核/操作系统/
CPU信息
的linux系统信息命令
head
-n
1
/etc/issue
#
查看操作系统版本,是数字1不是字母L
cat
/proc/cpuinfo
#
查看CPU信息的linux系统信息命令
hostname
#
查看计算机名的linux系统信息命令
lspci
-tv
#
列出所有
PCI设备
lsusb
-tv
#
列出所有USB设备的linux系统信息命令
lsmod
#
列出加载的内核模块
env
#
查看
环境变量
资源
free
-m
#
查看内存使用量和
交换区
使用量
df
-h
#
查看各分区使用情况

-sh
#
查看指定目录的大小
grep
MemTotal
/proc/meminfo
#
查看内存总量
grep
MemFree
/proc/meminfo
#
查看空闲内存量
uptime
#
查看系统
运行时间
、用户数、负载
cat
/proc/loadavg
#
查看系统负载磁盘和分区
mount
|
column
-t
#
查看挂接的分区状态
fdisk
-l
#
查看所有分区
swapon
-s
#
查看所有
交换分区
hdparm
-i
/dev/hda
#
查看磁盘参数(仅适用于
IDE设备
)
dmesg
|
grep
IDE
#
查看启动时IDE设备检测状况网络
ifconfig
#
查看所有网络接口的属性
iptables
-L
#
查看防火墙设置
route
-n
#
查看
路由表
netstat
-lntp
#
查看所有监听端口
netstat
-antp
#
查看所有已经建立的连接
netstat
-s
#
查看
网络统计
信息进程
ps
-ef
#
查看所有进程
top
#
实时显示
进程状态
用户
w
#
查看活动用户
id
#
查看指定用户信息
last
#
查看
用户登录
日志
cut
-d:
-f1
/etc/passwd
#
查看系统所有用户
cut
-d:
-f1
/etc/group
#
查看系统所有组
crontab
-l
#
查看当前用户的计划任务服务
chkconfig
–list
#
列出所有系统服务
chkconfig
–list
|
grep
on
#
列出所有启动的系统服务程序
rpm
-qa
#
查看所有安装的软件包
cat
/proc/cpuinfo
:查看CPU相关参数的linux系统命令
cat
/proc/partitions
:查看linux硬盘和分区信息的系统信息命令
cat
/proc/meminfo
:查看linux系统内存信息的linux系统命令
cat
/proc/version
:查看版本,类似uname
-r
cat
/proc/ioports
:查看设备io端口
cat
/proc/interrupts
:查看中断
cat
/proc/pci
:查看pci设备的信息
cat
/proc/swaps
:查看所有swap分区的信息

4. php 如何实现批量监测网页中的某一内容是否发生变化

<?php
header("content-type:text/html;charset=utf-8");
$fileurl="url2.txt";
$gdomain=@file_get_contents($fileurl,r);//获取文件url2.txt内容
$gdomain=split(" ",$gdomain);
set_time_limit(0);
ob_end_flush();//关闭缓存
foreach($gdomainas$key=>$domain){
$url="http://".$domain;

$fp=@fopen($url,r)ordie("超时,或网络无法连接!");
$gcont=@file_get_contents($url);

$pattern1='<title>(.*)</title>';
@preg_match_all($pattern1,$gcont,$rg);
//保存到本地
$of=fopen('temp.txt','a');//创建并打开temp.txt
if($of){
if(!empty($rg[1])){
//
//对比两个文本内容是否一致实现
//
//
echo"<ahref='$url'>$domain</a>当前标题:".$rg[1]."<br/>";
fwrite($of,$rg[1]);
}else{
echo"<ahref='$url'>$domain</a>标题不存在!<br/>";
fwrite($of,"null ");//标记为null
}
}
fclose($of);
flush();
sleep(3);
}
?>

5. 怎样用PHP实现邮件监测

可以加点分数吗~~~

我写出来了,下面的程序调试通过:

<?php
//下面三行是服务器、用户、密码,
$server='pop.163.com';
$user='[email protected]';
$pass='********';
//下面是进行检测邮件的语句
$fp = fsockopen($server, 110, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
$ret=fgets($fp);
if (substr($ret,0,3)!="+OK") echo "CONNECT ERROR: $ret\n";
fwrite($fp, "USER $user\n");
$ret=fgets($fp);
if (substr($ret,0,3)!="+OK") echo "USER ERROR: $ret\n";
fwrite($fp, "PASS $pass\n");
$ret=fgets($fp);
if (substr($ret,0,3)!="+OK") echo "PASS ERROR: $ret\n";
else if (preg_match_all('/(\d+)/', $ret, $reg)) echo "你有 {$reg[1][0]} 封新邮件,占 {$reg[1][1]} 字节空间。";
else echo $ret;
fclose($fp);
}
?>

我的机器上运行的结果如下:
E:\ygb>php a.php
你有 1749 封新邮件,占 1050661745 字节空间。

你稍微修改一下,使之可以在网页上,让用户选择服务器、输入用户和密码,这些我相信你会的吧,祝你好运。

6. PHP程序,如何监控内存情况

看到有人写透视宝做php监控的原理图,跟你分享下。我估计大家做的方式都是差不多。

PHP运行支撑的ZendEngine早在设计过程中已经预留了丰富的Hook,可以有效干涉处理过程中的几个关键步骤。利用了以下几个Hook,就能方便的获取数据:

1. zend_compile_file & zend_compile_string

加载分析文件或字符串,本身就会造成非常大的IO,如果过多地执行加载,无疑会造成内存和CPU的消耗.通过这两个hook,可以取得文件名、执行行数、使用内存和CPU占用时间。

2.zend_execute & zend_execute_internal

通过这两个hook的使用,我们可以准确地分析得出一个PHP应用中的类调用、方法调用、方法参数、内存占用和CPU占用,加以分析,便可以准确得出应用系统运行过程中的方法运行栈,API调用地址,SQL语句,CacheKey以及Cache命中等关键信息。

3.zend_throw_exception_hook

利用异常钩子,可以准确地得到应用系统运行过程中出现的异常信息,当然包括异常发生的类方法位置,参数,异常code和异常message。

4.zend_error_cb

错误钩子则更加直接,可以准确得到系统运行过程中出现的任何一个warning,代码错误或语法错误。

7. php 检测源代码是否被改动过和是否项目中有增加或删除的文件的实现思路

如果想自己做, hashtable是一定的

建一个hashtable, 储存当前内容, 同时该hashtable的id也同样可以用于作为文件功能等记录的id之用, 然后无论是windows还是linux都可以cron的,去做一个php文件去匹配吧, 文件修改时间无所谓的, md5(file)更有意义

如果单纯使用php, 遍历目录是必须的, 无论哪个os都提供文件动作的监控能力,但是这不在php的工作范围内,所以无法实现所谓的监控,你可以看看同步类软件,无论哪个操作系统都是直接去os的基层拿现成的东西来用,不用特地耗费资源去自己不断遍历目录监控的,

svn/cvs是主动提交改动的, 而所谓监控,那就是被动形式了,只有在改动时才有动作的叫监控,

你要php实现源码监控,一句话,不可能,只能做递归/迭代, 用hashtable处理并不断操作hashdb

ps:文件功能你们都不写进注释吗,注释本来就有这种功能, 比如phpdoc-_

8. 请问php如何实现实时监控文件.

在服务端建立一个根据需要进行循环的PHP脚本就可以。

猜测一下,您的第二个问题,是不是想进行相关检测以避免重复触发这个脚本。


实际上,不建议由用户行为触发这个脚本,无论是服务端代码,还是客户端的异步Ajax。

如果要用PHP脚本进行不停的循环监控,请联系运维人员,服务器启动,即在服务端开始运行这个脚本,他们会向您提供解决方案的。


真正的建议是,如果有任何可能,都不要使用PHP脚本利用循环代码进行服务端的监控。

不得不承认,这个方面PHP的稳定性还差一些,Java或许可以这么做,PHP就比较痛苦了。

比较可能的办法是请运维人员帮忙,通报监控逻辑,然后请他安装各种触发条件调用相应的PHP代码。


如果坚持使用PHP脚本进行相关工作,有两个建议给您:

  1. 尽快释放资源,无论脚本使用了什么资源,包括文件、内存、数据库等等,都尽快释放,这种地方可万万不能偷懒,否则就是自虐了。

  2. 在这个脚本中进行独立的手工日志输出,任何一层循环的入口都要进行记录,这样在监控失败的时候才有办法查找问题。

阅读全文

与php监测分析相关的资料

热点内容
路由器加密ip 浏览:989
电脑微信聊天记录怎么加密了 浏览:792
免费学画画的app哪个最好 浏览:966
怎么新建一个php文件 浏览:570
宁波python 浏览:347
美团程序员椅子 浏览:838
增加服务器是什么意思 浏览:687
丰田压缩机转速 浏览:483
加密的行业 浏览:258
app图形化编程语言 浏览:797
影响云服务器的因素有哪些 浏览:687
修改编译后c的文件 浏览:705
8051单片机步进电机 浏览:974
eve箱子已加密 浏览:454
python3eval函数 浏览:746
丹阳哪个app最好 浏览:429
w3m命令 浏览:982
mongodbphp操作类 浏览:988
如何用好压压缩文件 浏览:586
程序员应该如何选择下家公司 浏览:527