php 设置sessionid生成机制(PHP Cli 模式设置进程名称的方法)
php 设置sessionid生成机制
PHP Cli 模式设置进程名称的方法最近一直在优化自己的 PHP 多进程管理工具。GitHub 地址: https://github.com/fingerQin/phpthread
通过命令启动之后,它在系统后台运行的名称如下:
[root@localhost logs]# ps -ef|grep "Event/register"
root 1358 1356 0 19:50 ? 00:00:00 /usr/local/php72/bin/php cli.php Event/register
root 1482 1358 0 19:55 ? 00:00:00 /usr/local/php72/bin/php cli.php Event/register
root 1483 1358 0 19:55 ? 00:00:00 /usr/local/php72/bin/php cli.php Event/register
root 1484 1358 0 19:55 ? 00:00:00 /usr/local/php72/bin/php cli.php Event/register
root 1486 1358 0 19:55 ? 00:00:00 /usr/local/php72/bin/php cli.php Event/register
root 1487 1358 0 19:55 ? 00:00:00 /usr/local/php72/bin/php cli.php Event/register
root 1499 1240 0 19:56 pts/1 00:00:00 grep --color=auto Event/register
大家可以看到。它会把我们执行 PHP 脚本的整个命令路径全部显示出来。没办法伪装成一个特殊的名称,或者说优雅的名称。
查阅相关资料。其实 PHP 早已经支持这种操作。
一、proctitle 扩展实现
在 PHP 5.5.0 版本之前,只能通过 proctitle 扩展实现。下载地址: http://pecl.php.net/package/proctitle
关于安装这种 PHP C 扩展。这里就不展示说明。关于 PHP C 扩展的教程很多。
proctitle 扩展安装好之后。通过该扩展提供的 setproctitle 方法实现自定义进程名称。
process.php
|
<?php setproctitle( "NewProcess" ); sleep(30); |
此时我们命令运行脚本:
$php process.php
脚本会睡眠 30 秒。此时我们另开一个终端去查看该进程的名称。会发现该扩展名称已经被修改为:"NewProcess"。
由于该扩展已经 7 年未更新。所以,不推荐使用。
二、cli_set_process_title 方法实现
从 PHP 5.5.0 开始,PHP 已经内置了 cli_set_process_title 方法来解决这个重置进程名称的函数。我只能说,太贴心了。
使用也简单。
process2.php
|
<?php cli_set_process_title( "NewProcess" ); sleep(30); |
执行该脚本之后,咱们依然别启一个命令终端查看:
[root@localhost public]# ps -ef|grep NewProcess
root 10489 1240 0 09:49 pts/1 00:00:00 NewProcess
root 10496 1221 0 09:50 pts/0 00:00:00 grep --color=auto NewProcess
我们可以看到。已经生效了。
它就是如此简单。以后我们可以将该进程名称优雅化。也可以以此来伪装隐藏自己。总之,你可以用这个神奇的名字干你想干的事情。
总结
以上所述是小编给大家介绍的PHP Cli 模式设置进程名称的方法 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对开心学习网网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
原文链接:https://www.phpjieshuo.com/archives/138
- php函数使用教程讲解学习交流(浅谈PHP中的Trait使用方法)
- thinkphp实战教程之博客技术学习(python3编写ThinkPHP命令执行Getshell的方法)
- php框架使用方法大全(PHP MVC框架中类的自动加载机制实例分析)
- php验证码实现过程(php伪静态验证码不显示的解决方案)
- php nginx 底层执行流程(nginx/apache/php隐藏http头部版本信息的实现方法)
- php面向对象3大特征(PHP面向对象程序设计重载overloading操作详解)
- php小例子(PHP反射实际应用示例)
- thinkphp框架实例(ThinkPHP框架整合微信支付之JSAPI模式图文详解)
- php依赖注入对象注册(php依赖注入知识点详解)
- thinkphp数据库使用(thinkphp3.2同时连接两个数据库的简单方法)
- thinkphp使用说明(thinkphp框架使用JWTtoken的方法详解)
- php框架创建控制器代码(php连接sftp的作用以及实例代码)
- php抽象入门教程(php抽象方法和普通方法的区别点总结)
- think php上传服务器(ThinkPHP5+UEditor图片上传到阿里云对象存储OSS功能示例)
- php实现session入库实例(PHP使用Session实现上传进度功能详解)
- php添加数据到mysql数据库(PHP通过代码连接XAMPP数据库及MySQL数据库方法)
- 白龙马的改编学生版,快来看看(白龙马的改编学生版)
- 萌娃唱《白龙马》走红,那生动的小表情,网友直呼 简直是戏精(萌娃唱白龙马走红)
- 朱鹤松被不断认可,凤凰传奇玲花喊话岳云鹏,索要老朱演出门票(朱鹤松被不断认可)
- 元宵晚会槽点多,芒果台上来就假唱,岳云鹏不说相声改评书了(元宵晚会槽点多)
- 岳云鹏跟凤凰传奇谈心,说出了人生中最重要的三个人,这才成功(岳云鹏跟凤凰传奇谈心)
- 爱情可以当饭吃吗(爱情能当饭吃吗)
热门推荐
- html5定位教学(Html5 webview元素定位工具的实现)
- react的事件绑定(React事件绑定的方式详解)
- linux部署tomcat项目(阿里云服务器linux系统搭建Tomcat部署Web项目)
- vsftpd服务器的安装与配置(编译安装 vsFTP 3.0.3的详细解析)
- 谷歌浏览器调试模式下刷新的几种方式
- 用python画圣诞树送给女朋友(情人节快乐! python绘制漂亮玫瑰花)
- 阿里云mysql如何接入(阿里云服务器安装Mysql数据库的详细教程)
- mysql拼接多字段作为查询条件(Mysql 实现字段拼接的三个函数)
- python循环创建字典(Python字典的基本用法实例分析创建、增加、获取、修改、删除)
- sql function用法(SQL Function 自定义函数详解)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9