最近在开发一个安装程序的时候,打包为了 phar 包,遇到了一个问题就是打包后的 phar 包不能省略 php 去执行。 # 正常运行 php install.phar # 报错 ....下载 phpinfo.phar: chmod +x phpinfo.phar cp phpinfo.phar /usr/local/bin/phpinfo 执行 phpinfo: $ phpinfo...PHP_SAPI:cli PHP_VERSION:8.0.6 PHP_ZTS:false PHP_DEBUG:false PHP_OS:Darwin PHP_BINARY:/Users/lufei/....phpbrew/php/php-8.0.6/bin/php PHP_CONFIG_FILE_PATH:/Users/lufei/.phpbrew/php/php-8.0.6/etc PHP_LOADED_CONFIG_FILE...:/Users/lufei/.phpbrew/php/php-8.0.6/etc/php.ini PHP_CONFIG_FILE_SCAN_DIR:/Users/lufei/.phpbrew/php/php
,默认权限为440(只允许root用户及root组读取),之后在Nginx中监听该文件时就会提示502错误,解决办法就是给予socket文件读写权限666。...也可以对某种请求(即对一个普通文件)设定用户认证,如location ~ admin.php()使用 ~ 进行匹配)。...,会报错401(需要用户认证);如果为创建虚拟主机根目录会报错404(找不到指定目录);如果指定目录中没有添加索引页(.html或.php文件)会报错404(文件存在错误)。...This is a test of .php 注: 此处为了方便检测,已将用户认证关闭。...autoindex on; #开启目录列表访问,合适下载服务器,默认关闭。
开发中遇到了群发邮件慢的问题,找到了以下方法,还不错分享下: PHP异步执行的常用方式常见的有以下几种,可以根据各自优缺点进行选择: 1.客户端页面采用AJAX技术请求服务器 优点:最简单,也最快,就是在返回给客户端的...HTML代码中,嵌入AJAX调用,或者,嵌入一个img标签,src指向要执行的耗时脚本。...缺点:一般来说Ajax都应该在onLoad以后触发,也就是说,用户点开页面后,就关闭,那就不会触发我们的后台脚本了。 而使用img标签的话,这种方式不能称为严格意义上的异步执行。...用户浏览器会长时间等待php脚本的执行完成,也就是用户浏览器的状态栏一直显示还在load。 当然,还可以使用其他的类似原理的方法,比如script标签等等。...2.popen()函数 该函数打开一个指向进程的管道,该进程由派生给定的 command 命令执行而产生。打开一个指向进程的管道,该进程由派生给定的 command 命令执行而产生。
一、命令执行相关知识 0x01. 什么是命令执行 :让php文件去执行cmd命令. 在命令行中使用echo “” > 1.php: 写一句话木马到1.php文件....(路径在命令行本级目录) 代码执行和命令执行的区别: 代码执行:用户输入的数据被当做后端代码执行 命令执行:用户输入的数据被当做系统命令执行(菜刀的终端实际上也是用的命令执行调用的cmd窗口) 0x02.... php哪些函数可以做到命令执行: 1.system(‘whoami’): php操纵计算机执行whoami命令,并且输出结果,可以看到多行 2.echo exec(‘whoami’): php操纵计算机执行命令之后获取最后一行结果...,需要配合echo使用 3.echo shell_exec(‘whoami’): php操纵计算机执行命令之后,获取所有结果,但是不会自动输出,需要配合echo使用 4.passthru: 只调用命令...这时候可以拼接恶意语句,利用命令执行函数去生成一个带有一句话木马的php文件 构造语句:filename=xxbaqwe&echo "php eval($_REQUEST[1])?
springsecurity默认用户生成 springboot背后默默做了很多事情: 开启springSecurity自动化配置,开启后,会自动创建一个名为SpringSecurityFilterChain...中的过滤器链) 创建一个UserDetailsService实例,UserDetailsService负责提供用户数据,默认的用户数据是基于内存的用户,用户名为user,密码为随机生成的UUID字符串。...给用户生成一个默认的登录页面。 开启CSRF攻击防御。 开启会话固定攻击防御。 集成X-XSS-Protection 集成X-Frame-Options以防止单击劫持。...默认用户生成 SpringSecurity定义UserDetails接口来规范开发者自定义的用户对象 负责提供用户数据源的接口是UserDetailsService springSecurity为UserDetailsService...DispatcherType> dispatcherTypes) { this.dispatcherTypes = dispatcherTypes; } } } 我们可以看到默认用户为
我们之前在权限章节中已经了解到,权限只是用来限制普通用户的,root身份畅通无阻,为了避免由于个人失误或者无心操作而引发一系列问题,我们一般都是用个人的普通用户的身份来使用Linux。...不知道大家有没有和我相同情况的,就是每次使用Xshell来连接我们的Linux时,默认登陆的总是root身份。然后自己还要手动输入su指令进行切换用户。...为了减少这种小麻烦,我们可以直接设置默认登录用户身份。具体方法如下: 一、打开会话文件夹 二、打开后选择以记事本方式打开该会话 三、ctrl f搜索UserName,并修改为自己的普通用户名称。...后面我们再次登录时,普通用户就是我们的默认登录用户,而不再是root。此时输入普通用户的密码,连接登录即可。
之前有个业务,每分钟执行crontab ,会每天自动记录日志,但是日志的属主是root 这个时候fpm的www用户就会写入日志失败 crontab -e是普通的编辑增加一个crontab crontab...-u www -e 这样编辑的crontab就是以www用户执行的 crontab -l -u www 可以展示所有以www用户执行的cron指令
PHP的脚本执行: PHP的脚本执行还是会经过编译环节, 只不过它们一般会在运行的时候实时进行编译 1.启动PHP及Zend引擎, 加载注册的扩展模块 2.读取脚本文件,Zend引擎对脚本文件进行词法分析...3.编译成opcode执行 4.如果安装opcode缓存扩展(如APC, xcache, eAccelerator等),可能直接从缓存中读取opcode执行 脚本的编译执行: 1.读取脚本,通过lex按照词法规则切分一个一个的标记...3.Zend引擎将代码编译为opcode 4.PHP是构建在Zend虚拟机(Zend VM)之上的。PHP的opcode就是Zend虚拟机中的指令。...Yacc(Yet Another Compiler-Compiler) 1.安装lex,apt-get install flex 2.lex的词法规则文件 定义段 %% 规则段 %% 用户代码段
shell_exec() string shell_exec(string $cmd) 以 字符串 形式返回执行的全部结果。...echo `ls`; 其他 请查看:http://php.net/manual/zh/ref.exec.php
方法一:$url=http://www.baidu.com;file_get_contents...
使用PHP定时执行某些任务的话, 可以有以下两个方法: 1. linux下crontab, windows下计划任务 2....示例:创建index.php和test.txt,功能是往test.txt里每秒覆盖写一个数字,该数字递增。index.php代码如下: <?.../test.txt',$num); $num++; sleep(1); }while(true); 关闭浏览器后,发现依然能执行脚本,该数字依旧递增。...原因是这关键的两个函数在起作用: ignore_user_abort(true)无论客户端是否关闭浏览器,下面的代码都将得到执行。...set_time_limit(0) 取消php文件的执行时间,如果没有这个函数的话,默认php的执行时间是30秒,也就是说30秒后,这个文件就say goodbay了。
一、程序执行流程和进程线程简述 1程序执行流程 有类似脚本程序或编程经验的同学都知道,程序默认是自上而下,从左到右的按顺序执行,也叫串行执行;而多线程类似于并行执行,即A模块(函数)执行时B也执行不需要等...A执行完再执行,这里请区别对待并发执行(同一时间执行);以上是简单概念性描述, 2什么是线程与进程?...二、python程序执行流程示例 以下示例均在python3.5.2中完成 1、默认执行流程 import time def Foo(): sleep(2) print("I am Foo...可以看出,程序从上而下的调用了Foo函数休眠2秒再执行Bar函数休眠3秒,最后执行完成共使用大约5秒多一点时间.这说明 Foo执行完才执行Bar. 2、线程执行 在讨论线程时,先问一个问题,自上而下的串行执行可以满足条件...想像一个场景,我们在看一部电影时,要是默认串行执行,先放图像 再放电影中的声音,能接受吗?
** php代码执行函数解析 ** 一、代码执行漏洞原理: 用户输入的数据被当做后端代码进行执行 php @eval($_REQUEST[8])?...>//其实一句话木马的本质就是一个代码执行漏洞。用户输入的数据被当做代码进行执行。 这里提一下RCE(remote command/code execute)远程命令或者代码执行。...现在只要渗透的最终情况可以实现执行命令或者是代码都属于RCE,例如代码执行、文件包含、反序列化、命令执行,甚至是写文件Getshell都可以属于RCE 在PHP存在诸多函数可以做到代码执行。...(\_REQEUST['a'])//如何多行执行呢 写文件然后执行,例如: file_put_contents('1.php','PHP版本5.5及其以上版本可以使用 “{phpinfo()}”; => 代码执行phpinfo() php的字符串是可以使用复杂的表达式。
# 背景 通过yum命令安装的jenkins,通过service jenkins去启动jenkins的话,默认的用户是jenkins,但jenkins这个用户是无法通过su切换过去的 ,在某些环节可能产生问题...,期望修改默认启动用户 # 过程 1....jenkins/ /usr/lib/jenkins/jenkins.war /etc/sysconfig/jenkins 修改命令如下: chown -R nemo:nemo 目录 注:nemo是一个用户名字...,修改为期望的用户即可
PHP定时执行任务有两种方式: 一、Linux 服务器 Linux原生支持crontab,所以可以利用这一功能做定时任务 步骤: 1、编辑crontab文件: Linux:crontab -e 2、输入代码...http://www.website.com/Index/test方法 第二项代表curl所在目录, 第三项代表所要执行的url (若要执行PHP文件,与此格式类似,具体百度之。。)...esc :wq 保存 二、Windows服务器: Windows服务器可以利用系统的计划任务实现 步骤: 1、创建一个bat批处理文件,如: D:\xampp\php\php.exe -q D:\xampp...\htdocs\test.php 保存为test.bat,第一项为php.exe所在目录,第二项为需要执行的php文件路径 2、test.php文件写入: 此仅为测试用,具体代码可自行编写(本例是只要执行test.bat,就调用test.php,往test.txt里面写入一段字符串) 3、设置系统计划任务,定时执行test.bat O(∩_∩)O哈哈~
有时候我们需要某个功能或程序延迟几秒或一段时间执行,JS 的话,使用 setTimeout 可以实现 那 PHP 要怎么搞呢?...后来搜了下,可以通过 PHP 中的 sleep 函数来实现 语法: sleep(int $seconds): int seconds 表示需要延迟的秒数 如果 seconds 是负数,会报错 栗子: /..."; // 延迟5秒钟 sleep(5); echo date("Y-m-d H:i:s"); 首发自:php如何实现延迟执行 - 小鑫の随笔
要在PHP中执行shell命令,可以使用exec()函数、shell_exec()函数或system()函数。...exec()函数: exec(command, output, return_var); 复制代码 command:要执行的shell命令。 output:可选参数,用于存储命令的输出结果。...shell_exec()函数: $output = shell_exec(command); 复制代码 command:要执行的shell命令。...); 复制代码 command:要执行的shell命令。...在某些环境下,可能需要在PHP配置文件中启用相关函数。
前言 最近学习了PHP命令执行,内容比较多,把自己学到的总结下来,加深理解,水平有限,欢迎大佬斧正。 什么是PHP命令注入攻击?...Command Injection,即命令注入攻击,是指由于Web应用程序对用户提交的数据过滤不严格,导致黑客可以通过构造特殊命令字符串的方式,将数据提交至Web应用程序中,并利用该方式执行外部程序或系统命令实施攻击...PHP命令注入攻击存在的主要原因是Web应用程序员在应用PHP语言中一些具有命令执行功能的函数时,对用户提交的数据内容没有进行严格的过滤就带入函数中执行而造成的。...命令执行函数利用 一、system函数 先来看一下php学习手册对这个函数的解释,如图 ? 接下来如果我们构造如下代码,目的是获取本地用户信息并输出 PHP函数进行执行,并将结果反馈给我们,那么执行相应的其他PHP函数,如写入文件,查询文件信息等功能的代码字符串时,同样可以执行
在CentOS下可以通过shell脚本执行定时任务 在macos下 有类似的功能 使用crontab crontab的格式: f1 f2 f3 f4 f5 program # 分(0-59) 时(0-...php项目呢 首先crontab -e打开定时任务 */10 * * * * /usr/bin/php /Library/WebServer/Documents/...test.php >>/Library.../WebServer/Documents/...test.log */10 表示 每10分钟执行一次 >> 表示 追加输出到 test.log文件 > 表示覆盖输出到test.log php目录需要使用绝对位置...否则不会以root权限执行,会出现执行时的目录权限问题。...除了命令行php方式运行,还可以用 wget,curl方式打开本地的php脚本 譬如: * * * * curl http://localhost/...test.php > /Desktop/test.log
领取专属 10元无门槛券
手把手带您无忧上云