我不想使用HTTP :: Proxy包,因为我想要转储几个请求.我的一个班轮看起来像这样,但在试图传递标题时打破了:
perl -MData::Dumper -MHTTP::Daemon -MHTTP::Status -MLWP::UserAgent -e 'my $ua = LWP::UserAgent->new;my $d=new HTTP::Daemon(LocalPort=>1999);print "Please contact me at: <", $d->url, ">\n";while (my $c = $d->accept) {while (my $r = $c->get_request) {if ($r->method eq 'GET' and $r->url->path eq "/uploader") {$c->send_response("whatever.");print Dumper($r);}else{$response=$ua->request($r->method,"http://localhost:1996".$r->uri,$r->headers,$r->content);$c->send_response($response);}}}'
Run Code Online (Sandbox Code Playgroud)
格式化,那是:
#perl -e '
use Data::Dumper;
use HTTP::Daemon;
use HTTP::Status;
use LWP::UserAgent;
my $ua = LWP::UserAgent->new;
my $d=new HTTP::Daemon(LocalPort=>1999);
print "Please contact me at: < ", $d->url, " >\n";
while (my $c = $d->accept) {
while (my $r = …Run Code Online (Sandbox Code Playgroud) 我写了一个守护进程,将"Beat"一词写入文件,然后以15秒的间隔跟进当前日期和时间.但是,每次检查输出文件时,守护程序似乎输出两次,如下所示:
击败:2010年1月1日星期五18:09:01
击败:2010年1月1日星期五18:09:01
它应该只在进入的地方.整个代码位于http://pastebin.com/m27a81981(我不想在这里粘贴它,因为整个事情有点长.).写入文件的功能是
get_time();
ofstream outputFile("heart.txt", ios::app);
beat = "\nBeat: " + gtime + "\n";
outputFile << beat;
outputFile.close();
Run Code Online (Sandbox Code Playgroud)
提前致谢.
我有一个用Ruby编写的TCPclient.我想在后台使用它.目前它有一个循环:
loop do
end
Run Code Online (Sandbox Code Playgroud)
所以我可以运行一个客户端,它永远有效.
有没有办法作为服务运行,并写一个pid文件,然后我将能够通过pid杀死该进程?
我有一个bash脚本,基本上使用mplayer启动音频流:
#!/bin/bash
# startmusic.sh
/usr/bin/mplayer http://www.audiostream.com
Run Code Online (Sandbox Code Playgroud)
我想要确定的是,如果mplayer因任何原因而崩溃或结束,它会自动重启.因此,我每分钟运行一个cron作业,这也是一个bash脚本:
#!/bin/bash
# interval.sh
if [ -z "$(pgrep mplayer)" ]; then
#restart music
(
exec </dev/null
exec >/dev/null
exec 2>/dev/null
umask 0
cd /
bash /home/user/startmusic.sh
) &
else
echo "music already playing, no need to restart startmusic.sh"
fi
Run Code Online (Sandbox Code Playgroud)
使这个脚本不是很有用的一个奇怪的事情是,似乎mplayer正在启动2个实例,如果播放器停止(例如,当连接丢失时),只有1 mplayer实例退出,仍然留下一个.由于我的编程技巧非常简陋,我非常感谢任何(易于实现)的解决方案.在此先感谢/ J.
我们有一个使用php开发的守护进程的应用程序.到目前为止,我们已经在文档根目录中运行它.但是我们现在已经从主Web应用程序中隔离了我们的守护程序代码,因此在文档根目录中不再需要它.安装此类应用程序的适当目录是什么?
我正在为我的公司制作扫描服务器,它将用于从nessus,nmap,nikto等工具启动扫描.我用PHP编写了这些页面,但我需要控制后续进程(生成因为我需要在扫描完成后执行各种操作(例如通过电子邮件发送,从nessus服务器上下载报告等),使用nohup并使用&).
我被建议在这里创建一个PHP页面与之通信的python守护进程.我已经无休止地搜索了,但是我从初学者的角度找不到任何能够解释通信背后逻辑的东西(编写一个守护进程将是我最先进的项目).我知道IPC和unix域套接字,但我不知道如何在我的情况下使用它们.因此,我正在听取一些建议或指示我应该做什么.
我以为我可以使用while循环创建一个python脚本,该循环不断检查进程是否已终止,何时进行,执行适当的后进程终止操作.该脚本将被守护,因此它在后台运行,我将从PHP页面调用它,并将PID作为参数,例如我可以使用argparse模块访问它.
我在逻辑方面是正确的 - 还是有更好的解决方案?
任何帮助,或只是谷歌的东西,非常感谢!谢谢
我试图在具有systemd / systemctl的Centos 7上运行celery守护程序。它不起作用。
有什么建议解决此问题吗?
这是我的守护程序默认配置:
CELERYD_NODES="localhost.localdomain"
CELERY_BIN="/tmp/myapp/venv/bin/celery"
CELERY_APP="pipeline"
CELERYD_OPTS="--broker=amqp://192.168.168.111/"
CELERYD_LOG_LEVEL="INFO"
CELERYD_CHDIR="/tmp/myapp"
CELERYD_USER="root"
Run Code Online (Sandbox Code Playgroud)
注意:我使用以下命令启动守护进程
sudo /etc/init.d/celeryd start
Run Code Online (Sandbox Code Playgroud)
我从以下网址获得了celery守护程序脚本:https : //raw.githubusercontent.com/celery/celery/3.1/extra/generic-init.d/celeryd
我还尝试了以下方法之一:https : //raw.githubusercontent.com/celery/celery/3.1/extra/generic-init.d/celeryd, 但这在尝试启动守护程序时向我显示了一个错误:
systemd[1]: Starting LSB: celery task worker daemon...
celeryd[19924]: basename: missing operand
celeryd[19924]: Try 'basename --help' for more information.
celeryd[19924]: Starting : /etc/rc.d/init.d/celeryd: line 193: multi: command not found
celeryd[19924]: [FAILED]
systemd[1]: celeryd.service: control process exited, code=exited status=1
systemd[1]: Failed to start LSB: celery task worker daemon.
systemd[1]: Unit celeryd.service …Run Code Online (Sandbox Code Playgroud) 我使用以下命令安装了pm2模块:
npm install pm2 @ latest
然后我尝试使用
pm2 启动我的测试应用程序,如下所示:
$ pm2 start test.js
它会引发以下错误:
'pm2'无法识别为内部或外部命令
我需要为pm2设置环境变量吗?
我目前正在overoverwire.org上进行强盗战争游戏(针对那些不知道这是一个网站的人,他们需要执行不同的任务以提高自己的黑客技能)。我以前做过它们,但是我很早就被卡住了,我用扰流板对它们进行了爆炸。这样做的好处是,它为“可重播性”留了很多空间。xD现在我在bandit20,我需要使用一个可执行文件:
/home/bandit20/suconnect
usage: ./suconnect <port number>
Run Code Online (Sandbox Code Playgroud)
“将使用TCP连接到本地主机上的给定端口。如果它从另一端收到正确的密码,则将下一个密码发送回去。”
我最初的反应是拉出nmap并寻找开放端口。我确实找到了一些打开的,其中一些正在运行echo和一些openssl。总共有5个开放的端口,无论运行的服务如何,我还发现使用ps -alx在后台运行的netcat监听另一个第6个端口。
现在,任务说明显示:
[文件]在您指定为命令行参数的端口上与本地主机建立连接。然后,它从连接中读取一行文本,并将其与上一级密码(bandit20)进行比较。如果密码正确,它将传输下一级密码(bandit21)。注意:尝试连接到您自己的网络守护程序,以查看其是否按您的想法工作
我使用预期的语法尝试了找到的所有6个端口,但它们均未返回任何内容。我确实在扰流板的博客上找到了网站上的一个较旧的描述,内容是:
要达到此级别,您需要登录两次:一次运行setuid命令,一次启动setuid将连接到的网络守护程序。
我尝试过两次sshing,并使用二进制文件在所有这些端口和第二个窗口中进行侦听,但是它什么也没做。问题是在我运行二进制文件后,它给了我一个空白命令行,但是无论我键入什么,它都没有任何输出。我在文件上使用了字符串,但我发现它确实存在无法连接的失败消息,错误的密码,正确的密码等,但我没有收到任何信息。
我希望在这种情况下更多地了解基本概念,而不是交给解决方案。我不确定连接到您自己的网络守护程序意味着什么(我尝试使用Google谷歌搜索并在youtube上查找,但我不太了解网络守护程序是什么,或者连接到网络守护程序意味着什么)。还必须运行2个终端似乎很重要,因为他们将其取出来了,但是在这种情况下,我似乎无法弄清楚您应该怎么做或应该使用它做什么。另外,要侦听我使用netcat的本地主机上的端口,请不确定是否还有其他更好的方法,或者您是否应该使用其他任何方法。
任何反馈都非常感谢,谢谢:)