草庐IT

unix-socket

全部标签

PHP:验证本地 unix 用户(不直接访问/etc/shadow)

给定用户名和密码,我需要检查本地系统上是否有使用该用户名和密码的用户。我知道posix_getpwnam和使用PAM包,但这两种方法都需要PHP脚本可以访问/etc/shadow。我不想弄乱系统文件或守护程序用户的权限。我想这可以通过乱用标准系统命令(如sudo)或编写我自己的小型setuidC程序来完成。我也可以尝试使用所述用户名/密码通过FTP或SSH连接到本地主机以验证它。有没有更简单的方法? 最佳答案 如果您想要一种更原生的方式,您可以自己动手。我会看更多进入PAM:pam_authenticate.我的意思是,您应该能够使

php - 如何针对跨域的 PHP session ID 对 Socket.IO 进行身份验证

我在node.mydomain.com上设置了一个节点/Socket.IO,在www.mydomain.com上设置了一个Apache/PHP堆栈。目前我正在用这样的东西做身份验证:Client:在连接时,发送自定义authorization事件,其中包括PHPSESSID到服务器服务器:在授权时,使用此cookie调用api.php获取用户信息,将此身份信息发送给客户端客户端:现在可以使用此身份执行操作这有点笨拙,因为Socket.IO有一个我想使用的身份验证位置(Onthiswiki)。问题是我不知道如何将PHPSESSIDcookie信息从客户端发送到服务器。它们位于不同的域中,

PHP Socket 服务器作为服务运行

我已经创建了PHP套接字服务器,并通过命令提示符在本地主机(127.0.0.1)中启动了它。即C:\xampp\php\phpserver.php这在本地主机上工作正常。但我的问题是我必须在域服务器中运行此server.php文件。我已将server.php文件复制到Web主机目录(http://example.com/server.php)并将ip地址更改为php文件中的域ip地址。现在的问题是当我在浏览器中运行文件时http://www.example.com/server.php套接字服务器启动正常,并在5分钟内被浏览器自动停止(错误500)。我如何通过命令提示符运行该serve

php - Unix 'at' 命令并返回作业号

我目前正在使用unixat命令来安排将来的作业。但是,如果我认为有必要,我也希望能够删除这些作业。有什么办法可以在创建job后立即获取jobnumber?我知道atq可以显示待处理作业的列表,但我希望能够在创建作业后立即在PHP代码中获取作业编号。我可以运行atq命令,但是如果在我获得队列中的最后一个作业之前创建了另一个作业怎么办?那我没有正确的工号。长话短说,在使用at命令创建作业后,有没有什么方法可以在不使用atq命令的情况下获得作业编号作为返回?比如我的代码是:exec('echo/usr/bin/php-f/home/site/public_html/test.php|sudo

php - haxe (php) https 调用 : stream_socket_client() Peer certificate CN did not match expected CN

我正在使用haxe的Http类(编译为php)通过https将request()发送到AWS。这是一个使用haxe-aws库(https://github.com/Blank101/haxe-aws)的最小示例:variamconf=newIAMConfig('newbucket.s3-eu-central-1.amazonaws.com',accessKey,secretKey,'eu-central-1','s3');varsig4=newSig4Http('https://newbucket.s3-eu-central-1.amazonaws.com/',iamconf);sig

php - 从带有转换的图像 unix 命令行创建视频

我发现了几个关于如何从图像创建视频的问题和答案。我设置了其中两个并能够正确制作视频。我尝试了以下方法:ImageMagickconvert-delay100-quality75photo1.jpgphoto2.jpgmovie.mpgFFMPEGffmpeg-r10-b1800-iphoto1.jpgphoto2.jpgmovie.mpg最终结果是视频显示图像有时间,没有效果。我希望了解他们如何在这些图像之间添加淡入和淡出过渡。 最佳答案 我怀疑这是否可以通过开箱即用的库来完成,除非一帧一帧地创建。这两个库都没有真正专注于视频效果。

nginx <=> php-fpm : unix socket gives error, tcp 连接很慢

我在一个高流量站点上运行带有php-fpm的nginx。我让nginx通过tcp/ip与php-fpm通信,nginx和php-fpm池都在同一台服务器上运行。当我使用tcp/ip让nginx和php-fpm池相互通信时,页面加载需要几(5-10)秒才能完成任何事情,当它最终开始时,它需要根本没有时间完成加载。由于php-fpm的状态页面显示listenbacklog已满,我假设在处理请求之前需要一些时间。Netstat显示很多(20k+)连接处于TIME_WAIT状态,不知道这是否相关但似乎相关。当我尝试让nginx和php-fpm通过UNIX套接字进行通信时,页面实际加载之前的时间

php - "Connection refused"错误在 php 中的 socket_connect

我正在尝试将一些代码从perl转换为php。Perl代码如下所示:我的$handle=Connect($port,$host);我正在尝试使用套接字在php中做同样的事情。我试过socket_create和socket_connect,socket_create和socket_bind,以及fsocketopen。因此,我遇到了“连接被拒绝”或“权限被拒绝”的错误消息:socket_connect()[function.socket-connect]:unabletoconnect[111]:Connectionrefusedin我不确定这是我需要解决的问题,还是权限问题,因为perl

php - Nginx。连接()到 unix :/tmp/php. 套接字失败

我正在尝试在我的ubuntu虚拟机上设置nginx并尝试托管一个php网站。我正在尝试在我的ubuntu虚拟机上复制服务器设置。当我尝试从我的nginx服务器访问php页面时出现此错误。我试图在/tmp/文件夹中查找php.socket文件,但里面什么也没有。我的虚拟机上的fastcgi或php有问题吗?完整错误如下:[crit]9267#0:*1connect()tounix:/tmp/php.socketfailed(2:Nosuchfileordirectory)whileconnectingtoupstream,client:192.168.xxx.xxx,server:xxx

php - Unix 时间戳转换 PHP - 日期错误

我正在尝试做一些非常简单的事情-使用date()函数将时间戳转换为php中的字符串。代码如下:$test=date('d/m/y','1407974400000');echo$test;我希望答案是14/8/14。如果我查看http://www.epochconverter.com/这也给出了这个答案。然而,上述PHP产生的输出是07/12/86我很确定我正在做一些完全愚蠢的事情-任何人都可以提供帮助吗?谢谢,克里斯 最佳答案 你还有3个零,使用秒而不是毫秒:$test=date('d/m/y','1407974400');echo