1.不要使用相对路径
常常会看到:
require_once('../../lib/some_>该方法有很多缺点:
它首先查找指定的php包含路径, 然后查找当前目录.
因此会检查过多路径.
如果该脚本被另一目录的脚本包含, 它的基本目录变成了另一脚本所在的目录.
另一问题, 当定时任务运行该脚本, 它的上级目录可能就不是工作目录了.
2025年08月02日
常常会看到:
require_once('../../lib/some_>该方法有很多缺点:
它首先查找指定的php包含路径, 然后查找当前目录.
因此会检查过多路径.
如果该脚本被另一目录的脚本包含, 它的基本目录变成了另一脚本所在的目录.
另一问题, 当定时任务运行该脚本, 它的上级目录可能就不是工作目录了.
2025年08月02日
① out - javax.servlet.jsp.jspWriter
out对象用于把结果输出到网页上。
方法:
1. void clear() ;
清除输出缓冲区的内容,但是不输出到客户端。
2. void clearBuffer() ;
2025年08月02日
网络安全
近日,山石网科安全研究院监测发现PHPStudy Windows最新版本存在nginx解析漏洞,可以造成任意代码执行。
一、漏洞情况
phpStudy是一个PHP调试环境的程序集成包,该程序包集成最新的Apache+PHP+MySQL+phpMyAdmin+ZendOptimizer,一次性安装,无须配置即可使用。2019年9月,该软件包遭遇供应链攻击,黑客在phpStudy集成软件包植入后门,污染多个软件下载源,控制数十万台机器。本次爆出的漏洞是nginx的解析漏洞,也就是存在已久的/xx.php解析漏洞。攻击者可通过网站的上传接口上传伪装成正常文件(比如图片、文档等)的恶意代码,从而获取服务器的权限。
2025年08月02日
赞皇电商人正在做微信小程序店铺的需要注意了,微信平台刚刚发布的新规,自2022年12月31日起,对于有“选择商品/服务-下单-支付”功能
2025年08月02日
在web渗透中,最简单直接的方式就是文件上传。但是不做任何检测,直接getshell的现在已经很少了.我在平时的授权测试中,遇到的大多数都是对上传的文件内容,格式等检测的比较多的
按前端到后端绕过顺序分为:前端js检验、代码防护检测(比如waf)、服务端检测
一、文件上传安全配置
二、绕过服务端的代码检测
2025年08月02日
大家好,我是星哥!今天咱们不聊yum一键安装的“快餐式”部署,来点儿硬核的——源码编译安装PHP 8.3。为什么要折腾源码?因为它能让你深度定制PHP功能、启用最新特性,还能避开系统默认源的版本限制。
2025年08月02日
大家好!我是星哥。尽管现在 PHP 版本已迭代至 8.x,但有时为了兼容遗留系统或特定应用需求,我们仍需部署特定版本的 PHP。最主要的是之前的项目采用的PHP7.3,未来兼容旧的项目, 今天,星哥将手把手带大家在 Rocky Linux 9 环境下,从源码编译安装 PHP 7.3.7。
2025年08月02日
之前都用惯了阿里云购买的负载均衡直接配置https,最近要试试服务器本地配置https,回顾一下,文件多余参数不做赘述。
首先是80端口的配置文件,如不需要忽略。
server
{
listen 80;
server_name www.xxxx.com; //你的域名
index index.html index.htm index.php default.html default.htm default.php;
root /home/wwwroot/xxx/; //项目根目录
client_max_body_size 1000M;
include rewrite/none.conf;
include enable-php-pathinfo.conf;
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
location ~ /.well-known {
allow all;
}
location ~ /\.
{
deny all;
}
}
2025年08月02日
在Nginx的虚拟主机配置文件中(vhost.conf)新增一个server节点,一个server节点代表一个虚拟主机。
配置参考如下:
server {
listen 80;
server_name domain.com;
location / {
root /www/wwwroot/public;
index index.html index.htm index.php;
#显示文件列表(索引)
autoindex on;
#默认为on,显示出文件的确切大小,单位是bytes
#改为off后,显示出文件的大概大小,单位是kB或者MB或者GB
autoindex_exact_size on;
#默认为off,显示的文件时间为GMT时间。
#改为on后,显示的文件时间为文件的服务器时间
autoindex_localtime on;
#URL重写配置
if (!-e $request_filename){
rewrite ^/(.*)$ /index.php/$1 last;
}
}
#location ~ \.php$ {
location ~ \.php { #pathinfo配置,去掉后面的$
root /www/wwwroot/public;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
#pathinfo配置,高版本nginx的配置方法
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
#pathinfo配置,低版本nginx的配置方法
#fastcgi_split_path_info ^(.+\.php)(.*)$;
#fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}